Amazon Glue 组件 - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Amazon Glue 组件

Amazon Glue 提供控制台和 API 操作来设置和管理您的提取、转换和加载 (ETL) 工作负载。您可以通过多个特定于语言的开发工具包和 Amazon Command Line Interface (Amazon CLI) 来使用 API 操作。有关使用 Amazon CLI 的信息,请参阅 Amazon CLI 命令参考

Amazon Glue 使用 Amazon Glue Data Catalog来存储有关数据源、转换和目标的元数据。数据目录是 Apache Hive 元存储的简易替代。Amazon Glue Jobs system提供用于为您的数据定义、安排和运行 ETL 操作的托管基础设施。有关 Amazon Glue API 的更多信息,请参阅Amazon Glue API

Amazon Glue 控制台

您可以使用 Amazon Glue 控制台来定义和协调您的 ETL 工作流程。该控制台在 Amazon Glue Data Catalog和 Amazon Glue Jobs system中调用多个 API 操作以执行以下任务:

  • 定义 Amazon Glue 对象,如作业、表、爬网程序和连接。

  • 安排爬网程序的运行时间。

  • 为作业触发器定义事件或计划。

  • 搜索和筛选 Amazon Glue 对象的列表。

  • Edit 转换脚本。

Amazon Glue Data Catalog

Amazon Glue Data Catalog 是您在 Amazon 云中的持久性技术元数据存储。

每个 Amazon 账户在每个 Amazon 区域有一个 Amazon Glue Data Catalog。每个数据目录都是组织成数据库的高度可扩展的表集合。表是存储在 Amazon RDS、Apache Hadoop 分布式文件系统、Amazon OpenSearch Service 等源中的结构化或半结构化数据集合的元数据表示形式。Amazon Glue Data Catalog 提供了一个统一的存储库,不同的系统可以在其中存储和查找元数据来跟踪数据孤岛中的数据。然后,您可以使用元数据在各种应用程序中以统一的方式查询和转换该数据。

您将数据目录与 Amazon Identity and Access Management 策略和 Lake Formation 一同使用,从而控制对表和数据库的访问。通过这样做,您可以允许企业中的不同组将数据安全地发布到更广泛的组织,同时以高度精细的方式保护敏感信息。

数据目录以及 CloudTrail 和 Lake Formation 还提供全面的审计和监管功能,其中有架构更改跟踪和数据访问控制。这有助于确保数据不会被不当修改或无意中共享。

有关保护及审计 Amazon Glue Data Catalog 的信息,请参阅:

以下是其他 Amazon 服务和使用 Amazon Glue Data Catalog 的开源项目:

Amazon Glue 爬网程序和分类器

Amazon Glue 还能让您设置爬网程序,它可以扫描所有类型的存储库中的数据,对其进行分类,从中提取架构信息,并自动在 Amazon Glue Data Catalog中存储元数据。然后 Amazon Glue Data Catalog 可用于指导 ETL 操作。

有关如何设置爬网程序和分类器的信息,请参阅定义爬网程序。有关如何使用 Amazon Glue API 编程爬网程序和分类器的信息,请参阅爬网程序和分类器 API

Amazon Glue ETL 操作

通过使用数据目录中的元数据,Amazon Glue 可以自动生成具有 Amazon Glue 扩展的 Scala 或 PySpark(用于 Apache Spark 的 Python API)脚本,您可以使用和修改它来执行各种 ETL 操作。例如,您可以提取、清除和转换原始数据,然后将结果存储在不同的存储库中,以便可以对其进行查询和分析。此类脚本可能会将 CSV 文件转换为关系形式并将其保存到 Amazon Redshift 中。

有关如何使用 Amazon Glue ETL 功能的更多信息,请参阅ETL 脚本编程

Amazon Glue 中的流式处理 ETL

通过 Amazon Glue,您能够使用连续运行的任务对流数据执行 ETL 操作。Amazon Glue 流式处理 ETL 基于 Apache Spark Structured Streaming 引擎而构建,可以从 Amazon Kinesis Data Streams、Apache Kafka 和 Amazon Managed Streaming for Apache Kafka(Amazon MSK)提取流。流式处理 ETL 可以清理和转换流数据,并将其加载到 Amazon S3 或 JDBC 数据存储中。在 Amazon Glue 中使用流式处理 ETL 可以处理 IoT 流、点击流和网络日志等事件数据。

如果您知道流数据源的架构,则可以在数据目录表中指定该架构。如果没有,则可以在流式 ETL 任务中启用架构检测。然后,任务会根据传入的数据自动确定架构。

流式处理 ETL 任务可以同时使用 Amazon Glue 内置转换和 Apache Spark Structured Streaming 的原生转换。有关更多信息,请参阅 Apache Spark 网站上的流式处理 DataFrame/数据集的操作

有关更多信息,请参阅在 Amazon Glue 中添加串流 ETL 任务

Amazon Glue 作业系统

Amazon Glue Jobs system提供托管基础设施以协调 ETL 工作流程。您可以在 Amazon Glue 中创建作业,用于自动处理您用于提取、转换数据并将数据传输到不同位置的脚本。作业可以安排和串联,也可以由诸如新数据到达之类的事件触发。

有关如何使用 Amazon Glue Jobs system的更多信息,请参阅运行和监控 Amazon Glue。有关使用 Amazon Glue Jobs system API 编程的信息,请参阅作业 API