什么是 AWS Glue? - AWS Glue
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

什么是 AWS Glue?

AWS Glue 是一项完全托管的 ETL(提取、转换和加载)服务,使您能够轻松而经济高效地对数据进行分类、清理和扩充,并在各种数据存储和数据流之间可靠地移动数据。AWS Glue 由一个称为 AWS Glue 数据目录的中央元数据存储库、一个自动生成 Python 或 Scala 代码的 ETL 引擎以及一个处理依赖项解析、作业监控和重试的灵活计划程序组成。AWS Glue 是无服务器服务,因此无需设置或管理基础设施。

AWS Glue 设计用于处理半结构化数据。它引入了一个称为动态帧 的组件,您可以在 ETL 脚本中使用该组件。动态框架与 Apache Spark DataFrame 类似,后者是用于将数据组织到行和列中的数据抽象,不同之处在于每条记录都是自描述的,因此刚开始并不需要任何架构。借助动态帧,您可以获得架构灵活性和一组专为动态帧设计的高级转换。您可以在动态帧与 Spark DataFrame 之间进行转换,以便利用 AWS Glue 和 Spark 转换来执行所需的分析。

您可以使用 AWS Glue 控制台发现数据,转换数据,并使数据可用于搜索和查询。控制台调用底层服务来协调转换数据所需的工作。您还可以使用 AWS Glue API 操作来与 AWS Glue 服务交互。使用熟悉的开发环境来编辑、调试和测试您的 Python 或 Scala Apache Spark ETL 代码。

有关定价信息,请参阅 AWS Glue 定价

应在何时使用 AWS Glue?

您可以使用 AWS Glue 组织、清理、验证和格式化数据,以便在数据仓库或数据湖中存储。 您可以将 AWS 云数据转换和移动到您的数据存储中。您还可以将来自不同的静态或流式处理数据源的数据加载到数据仓库或数据湖中,以进行定期报告和分析。通过将数据存储在数据仓库或数据湖中,您可以从业务的不同部分集成信息,并为决策提供一个共同的数据源。

AWS Glue 简化了您在生成数据仓库或数据湖时的许多任务:

  • 覆盖有关数据存储的元数据并将其编录到中心目录中。您可以处理半结构化数据,如点击流或处理日志。

  • 用预定的爬网程序中的表定义填充 AWS Glue 数据目录。爬网程序调用分类器逻辑来推断数据的架构、格式和数据类型。此元数据在 AWS Glue 数据目录中存储为表,并在 ETL 作业的创作过程中使用。

  • 生成 ETL 脚本,以将数据从源转换、展平和丰富到目标。

  • 检测架构更改并根据您的首选项进行调整。

  • 基于计划或事件触发 ETL 作业。您可以自动启动作业,将数据移动到数据仓库或数据湖中。触发器可用于在作业之间创建依赖流。

  • 收集运行时指标以监控数据仓库或数据湖的活动。

  • 处理错误并自动重试。

  • 根据需要扩展资源,以运行您的作业。

您可以在针对 Amazon S3 数据湖运行无服务器查询时使用 AWS Glue。 AWS Glue 可以编录您的 Amazon Simple Storage Service (Amazon S3) 数据,使其可用于通过 Amazon Athena 和 Amazon Redshift Spectrum 进行查询。借助爬网程序,您的元数据与底层数据保持同步。Athena 和 Redshift Spectrum 可以使用 AWS Glue 数据目录直接查询您的 Amazon S3 数据湖。借助 AWS Glue,您可以通过一个统一接口访问和分析数据,而不必将其加载到多个数据仓库中。

您可以通过 AWS Glue 创建事件驱动型 ETL 管道。 您可以通过从 AWS Lambda 函数调用您的 AWS Glue ETL 作业,在 Amazon S3 中有新数据可用时立即运行 ETL 作业。您还可以在 AWS Glue 数据目录中将这个新的数据集注册为 ETL 作业的一部分。

您可以使用 AWS Glue 来了解您的数据资产。 您可以使用各种 AWS 服务来存储您的数据,并且使用 AWS Glue 数据目录仍然维护一个统一数据视图。查看Data Catalog以快速搜索和发现您拥有的数据集,并在一个中央存储库中维护相关元数据。Data Catalog还充当您的外部 Apache Hive 元存储的简易替代。