本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
处理 Amazon Glue 作业
Amazon Glue 作业将封装连接到源数据的脚本,处理该脚本,然后将其写入数据目标。通常,作业运行提取、转换和加载 (ETL) 脚本。作业还可以运行通用 Python 脚本(Python shell 作业)。Amazon Glue 触发器 可以根据计划或事件或者按需启动作业。您可以监控作业运行以了解运行时指标(例如完成状态、持续时间和开始时间)。
您可以使用 Amazon Glue 生成的脚本,也可以提供您自己的脚本。借助源架构和目标位置或架构,Amazon Glue 代码生成器可以自动创建 Apache Spark API(PySpark)脚本。您可以将此脚本用作起点,并对其进行编辑以满足您的目标。
Amazon Glue 可以用多种数据格式编写输出文件,包括 JSON、CSV、ORC(优化的行列式)、Apache Parquet 和 Apache Avro。对于某些数据格式,可以编写常见的压缩格式。
Amazon Glue 支持以下类型的作业:
Spark 任务会在由 Amazon Glue 托管的 Apache Spark 环境中执行。它将批量处理数据。
-
流式处理 ETL 作业与 Spark 作业类似,只不过前者在数据流上执行 ETL。它使用 Apache Spark Structured Streaming 框架。某些 Spark 作业功能不可用于流式处理 ETL 作业。
-
Python shell 任务将 Python 脚本作为 shell 运行,支持的 Python 版本具体取决于您使用的 Amazon Glue 版本。您可以使用这些作业来计划和运行不需要 Apache Spark 环境的任务。
-
Ray 是一个开源分布式计算框架,可以用来纵向扩展工作负载,其重点是 Python。Amazon GlueRay 作业和交互式会话允许您在 Amazon Glue 中使用 Ray。
以下几个部分提供有关 Amazon Glue 中的 ETL 和 Ray 作业的信息。