作业运行 - Amazon连接词
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

作业运行

作业运行 API 介绍 AWS Glue 中与启动、停止或查看作业运行以及重置作业书签相关的数据类型和 API。

数据类型

JobRun 结构

包含有关作业运行的信息。

Fields

  • Id – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    此作业运行的 ID。

  • Attempt – 数字 (integer)。

    尝试运行此作业的次数。

  • PreviousRunId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    此作业以前运行时的 ID。例如,StartJobRun 操作中指定的 JobRunId

  • TriggerName – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    启动此作业运行的触发器的名称。

  • JobName – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    此运行中使用的作业定义的名称。

  • StartedOn – 时间戳.

    此作业运行的启动日期和时间。

  • LastModifiedOn – 时间戳.

    此作业运行的上次修改时间。

  • CompletedOn – 时间戳.

    此作业运行的完成日期和时间。

  • JobRunState – UTF-8 字符串(有效值:STARTING | RUNNING | STOPPING | STOPPED | SUCCEEDED | FAILED | TIMEOUT)。

    作业运行的当前状态。有关异常终止的任务的状态的更多信息,请参阅 AWS Glue 作业运行状态

  • Arguments – 键值对的映射数组。

    每个键是一个 UTF-8 字符串。

    每个值是一个 UTF-8 字符串。

    与此运行关联的作业参数。对于此作业运行,它们会替换作业定义本身中的默认参数集。

    您可以在此处指定您自己的作业执行脚本使用的参数以及 AWS Glue 本身使用的参数。

    有关如何指定和使用您自己的作业参数的信息,请参阅开发人员指南中的在 Python 中调用 AWS Glue API 主题。

    有关 AWS Glue 用于设置作业的键-值对的信息,请参阅开发人员指南中的由 AWS Glue 使用的特殊参数主题。

  • ErrorMessage – UTF-8 字符串。

    与此作业运行关联的错误消息。

  • PredecessorRunsPredecessor 对象的数组。

    此作业运行的前身列表。

  • AllocatedCapacity – 数字 (integer)。

    此字段已弃用。请改用 MaxCapacity

    分配给此 JobRun 的 AWS Glue 数据处理单元 (DPU) 的数量。可以分配 2 到 100 个 DPU;默认值为 10。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 AWS Glue 定价页

  • ExecutionTime – 数字 (integer)。

    作业运行使用资源的时间长度 (以秒为单位)。

  • Timeout - 数字(整数),至少为 1。

    JobRun 超时(分钟) 这是作业运行在终止并进入 TIMEOUT 状态前可以使用资源的最长时间。默认值为 2880 分钟 (48 小时)。此值会覆盖父作业中设置的超时值。

  • MaxCapacity – 数字 (double)。

    此作业运行时可分配的 AWS Glue 数据处理单元 (DPU) 的数量。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 AWS Glue 定价页

    如果使用 WorkerTypeNumberOfWorkers,请勿设置 Max Capacity

    可为 MaxCapacity 分配的值取决于您是否运行 Python shell 作业或 Apache Spark ETL 作业:

    • 当您指定 Python shell 作业 (JobCommand.Name="pythonshell"),您可以分配 0.0625 或 1 DPU。默认值为 0.0625 DPU。

    • 当您指定 Apache Spark ETL 作业 (JobCommand.Name="glueetl") 时,可以分配 2 到 100 个 DPU。默认为 10 个 DPU。此作业类型不能具有小数 DPU 分配。

  • WorkerType – UTF-8 字符串(有效值:Standard="" | G.1X="" | G.2X="")。

    作业运行时分配的预定义工作线程的类型。接受的值为 Standard、G.1X 或 G.2X。

    • 对于 Standard 工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 50GB 磁盘,并且每个工作线程提供 2 个执行器。

    • 对于 G.1X 工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 64GB 磁盘,并且每个工作线程提供 1 个执行器。

    • 对于 G.2X 工作线程类型,每个工作线程提供 84 个 vCPU、32 GB 内存和 128GB 磁盘,并且每个工作线程提供 1 个执行器。

  • NumberOfWorkers – 数字 (integer)。

    作业运行时分配的定义 workerType 的工作线程数。

    您可以定义的最大工作线程数是 299 (G.1X),以及 149 (G.2X)。

  • SecurityConfiguration – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    运行该作业将使用的 SecurityConfiguration 结构的名称。

  • LogGroupName – UTF-8 字符串。

    用于进行安全日志记录的日志组的名称,可在 Amazon CloudWatch 中使用 AWS KMS 进行服务器端加密。此名称可以是 /aws-glue/jobs/,在这种情况下,默认加密为 NONE。如果您添加角色名称和 SecurityConfiguration 名称(换句话说,/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/),则该安全配置将用于加密该日志组。

  • NotificationProperty – 一个 NotificationProperty 对象。

    指定作业运行通知的配置属性。

  • GlueVersion – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Custom string pattern #15 匹配。

    Glue 版本决定 AWS Glue 支持的 Apache Spark 和 Python 版本。Python 版本指示了 Spark 类型的作业支持的版本。

    有关可用的 AWS Glue 版本以及相应的 Spark 和 Python 版本的更多信息,请参阅开发人员指南中的 Glue 版本

    在未指定 Glue 版本的情况下创建的作业默认为 Glue 0.9。

Predecessor 结构

在触发此作业运行的条件触发器的谓词中使用的作业运行。

Fields

  • JobName – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    作业运行前身使用的作业定义的名称。

  • RunId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    作业运行前身的作业运行 ID。

JobBookmarkEntry 结构

定义作业可以恢复处理的点。

Fields

  • JobName – UTF-8 字符串。

    相关作业的名称。

  • Version – 数字 (integer)。

    作业的版本。

  • Run – 数字 (integer)。

    运行 ID 号。

  • Attempt – 数字 (integer)。

    尝试 ID 号。

  • PreviousRunId – UTF-8 字符串。

    与上次作业运行关联的唯一运行标识符。

  • RunId – UTF-8 字符串。

    运行 ID 号。

  • JobBookmark – UTF-8 字符串。

    书签本身。

BatchStopJobRunSuccessfulSubmission 结构

记录成功的对停止指定 JobRun 的请求。

Fields

  • JobName – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    已停止的作业运行中使用的作业定义的名称。

  • JobRunId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    已停止的作业运行的 JobRunId

BatchStopJobRunError 结构

记录在尝试停止指定的作业运行时出现的错误。

Fields

  • JobName – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    相关作业运行中使用的作业定义的名称。

  • JobRunId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    相关作业运行的 JobRunId

  • ErrorDetail – 一个 ErrorDetail 对象。

    指定有关遇到的错误的详细信息。

Operations

StartJobRun 操作 (Python:start_job_run)

使用作业定义启动作业运行。

Request

  • JobName:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    要使用的作业定义的名称。

  • JobRunId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    要重试的以前的 JobRun 的 ID。

  • Arguments – 键值对的映射数组。

    每个键是一个 UTF-8 字符串。

    每个值是一个 UTF-8 字符串。

    专门针对此运行的作业参数。对于此作业运行,它们会替换作业定义本身中的默认参数集。

    您可以在此处指定您自己的作业执行脚本使用的参数以及 AWS Glue 本身使用的参数。

    有关如何指定和使用您自己的作业参数的信息,请参阅开发人员指南中的在 Python 中调用 AWS Glue API 主题。

    有关 AWS Glue 用于设置作业的键-值对的信息,请参阅开发人员指南中的由 AWS Glue 使用的特殊参数主题。

  • AllocatedCapacity – 数字 (integer)。

    此字段已弃用。请改用 MaxCapacity

    要分配给此 JobRun 的 AWS Glue 数据处理单元 (DPU) 的数量。可以分配 2 到 100 个 DPU;默认值为 10。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 AWS Glue 定价页

  • Timeout - 数字(整数),至少为 1。

    JobRun 超时(分钟) 这是作业运行在终止并进入 TIMEOUT 状态前可以使用资源的最长时间。默认值为 2880 分钟 (48 小时)。此值会覆盖父作业中设置的超时值。

  • MaxCapacity – 数字 (double)。

    此作业运行时可分配的 AWS Glue 数据处理单元 (DPU) 的数量。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 AWS Glue 定价页

    如果使用 WorkerTypeNumberOfWorkers,请勿设置 Max Capacity

    可为 MaxCapacity 分配的值取决于您是否运行 python shell 作业或 Apache Spark ETL 作业:

    • 当您指定 Python shell 作业 (JobCommand.Name="pythonshell"),您可以分配 0.0625 或 1 DPU。默认值为 0.0625 DPU。

    • 当您指定 Apache Spark ETL 作业 (JobCommand.Name="glueetl") 时,可以分配 2 到 100 个 DPU。默认为 10 个 DPU。此作业类型不能具有小数 DPU 分配。

  • SecurityConfiguration – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    运行该作业将使用的 SecurityConfiguration 结构的名称。

  • NotificationProperty – 一个 NotificationProperty 对象。

    指定作业运行通知的配置属性。

  • WorkerType – UTF-8 字符串(有效值:Standard="" | G.1X="" | G.2X="")。

    作业运行时分配的预定义工作线程的类型。接受的值为 Standard、G.1X 或 G.2X。

    • 对于 Standard 工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 50GB 磁盘,并且每个工作线程提供 2 个执行器。

    • 对于 G.1X 工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 64GB 磁盘,并且每个工作线程提供 1 个执行器。

    • 对于 G.2X 工作线程类型,每个工作线程提供 84 个 vCPU、32 GB 内存和 128GB 磁盘,并且每个工作线程提供 1 个执行器。

  • NumberOfWorkers – 数字 (integer)。

    作业运行时分配的定义 workerType 的工作线程数。

    您可以定义的最大工作线程数是 299 (G.1X),以及 149 (G.2X)。

Response

  • JobRunId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    分配给此作业运行的 ID。

Errors

  • InvalidInputException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • ResourceNumberLimitExceededException

  • ConcurrentRunsExceededException

BatchStopJobRun 操作 (Python:batch_stop_job_run)

停止指定的作业定义的一个或多次作业运行。

Request

  • JobName:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    要停止其作业运行的作业定义的名称。

  • JobRunIds:必需 UTF-8 字符串数组,不少于 1 个或不超过 25 个字符串。

    应为该作业定义停止的 JobRunIds 列表。

Response

  • SuccessfulSubmissionsBatchStopJobRunSuccessfulSubmission 对象的数组。

    已成功提交的要停止的 JobRun 列表。

  • ErrorsBatchStopJobRunError 对象的数组。

    尝试停止 JobRuns 时遇到的错误列表,包括遇到每个错误的 JobRunId 和有关错误的详细信息。

Errors

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetJobRun 操作 (Python:get_job_run)

检索给定作业运行的元数据。

Request

  • JobName:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    正在运行的作业定义的名称。

  • RunId:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    作业运行的 ID。

  • PredecessorsIncluded – Boolean.

    如果应返回运行前身的列表,则为 True。

Response

  • JobRun – 一个 JobRun 对象。

    请求的作业运行元数据。

Errors

  • InvalidInputException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

GetJobRuns 操作 (Python:get_job_runs)

检索给定作业定义的所有运行的元数据。

Request

  • JobName:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    要检索其所有作业运行的作业定义的名称。

  • NextToken – UTF-8 字符串。

    延续标记 (如果这是延续调用)。

  • MaxResults – 数字(整数),不小于 1 或大于 1000。

    响应的最大大小。

Response

  • JobRunsJobRun 对象的数组。

    作业运行元数据对象的列表。

  • NextToken – UTF-8 字符串。

    延续令牌(如果尚未返回所有请求的作业运行)。

Errors

  • InvalidInputException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

GetJobBookmark 操作 (Python: get_job_bookmark)

返回有关作业书签条目的信息。

Request

  • JobName:必需 UTF-8 字符串。

    相关作业的名称。

  • Version – 数字 (integer)。

    作业的版本。

  • RunId – UTF-8 字符串。

    与此作业运行关联的唯一运行标识符。

Response

  • JobBookmarkEntry – 一个 JobBookmarkEntry 对象。

    用于定义作业可以恢复处理的点的结构。

Errors

  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

  • ValidationException

GetJobBookmarks 操作 (Python: get_job_bookmarks)

返回有关作业书签条目的信息。该列表按版本号递减的顺序排列。

Request

  • JobName:必需 UTF-8 字符串。

    相关作业的名称。

  • MaxResults – 数字 (integer)。

    响应的最大大小。

  • NextToken – 数字 (integer)。

    延续标记 (如果这是延续调用)。

Response

  • JobBookmarkEntriesJobBookmarkEntry 对象的数组。

    用于定义作业可以恢复处理的点的作业书签条目列表。

  • NextToken – 数字 (integer)。

    延续令牌,如果返回所有条目,则其值为 1;如果未返回所有请求的作业运行,则其值 > 1。

Errors

  • InvalidInputException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

ResetJobBookmark 操作 (Python:reset_job_bookmark)

重置书签条目。

Request

  • JobName:必需 UTF-8 字符串。

    相关作业的名称。

  • RunId – UTF-8 字符串。

    与此作业运行关联的唯一运行标识符。

Response

  • JobBookmarkEntry – 一个 JobBookmarkEntry 对象。

    重置的书签条目。

Errors

  • EntityNotFoundException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException