任务运行
任务运行 API 介绍与在 Amazon Glue 中开启、停止或查看任务运行以及重置任务书签相关的数据类型和 API。
数据类型
JobRun 结构
包含有关任务运行的信息。
字段
-
Id
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。此任务运行的 ID。
-
尝试运行此任务的次数。
-
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 匹配。此运行中使用的任务定义的名称。
-
此任务运行的启动日期和时间。
-
此作业运行的上次修改时间。
-
此任务运行的完成日期和时间。
-
JobRunState
- UTF-8 字符串(有效值:STARTING
|RUNNING
|STOPPING
|STOPPED
|SUCCEEDED
|FAILED
|TIMEOUT
|ERROR
|WAITING
)。任务运行的当前状态。有关异常终止的任务的状态的更多信息,请参阅 Amazon Glue 任务运行状态。
-
每个键是一个 UTF-8 字符串。
每个值是一个 UTF-8 字符串。
与此运行关联的任务参数。对于此任务运行,它们会替换任务定义本身中的默认参数集。
可以在此处指定您自己的任务执行脚本使用的参数以及 Amazon Glue 本身使用的参数。
有关如何指定和使用您自己的任务参数的信息,请参阅开发人员指南中的在 Python 中调用 Amazon Glue API 主题。
有关 Amazon Glue 用于设置任务的键值对的信息,请参阅开发人员指南中的由 Amazon Glue 使用的特殊参数主题。
-
与此任务运行关联的错误消息。
-
PredecessorRuns
– Predecessor 对象的数组。此任务运行的前身列表。
-
AllocatedCapacity
– 数字 (integer)。此字段已弃用。请改用
MaxCapacity
。分配给此 JobRun 的 Amazon Glue 数据处理单元(DPU)的数量。可以分配 2 到 100 个 DPU;默认值为 10。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 Amazon Glue 价格页面
。 -
作业运行使用资源的时间长度 (以秒为单位)。
-
JobRun
超时(分钟) 这是任务运行在终止并进入TIMEOUT
状态前可以使用资源的最长时间。此值会覆盖父任务中设置的超时值。串流任务没有超时。非串流任务的默认值为 2880 分钟(48 小时)。
-
此任务运行时可分配的 Amazon Glue 数据处理单元(DPU)的数量。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 Amazon Glue 价格页面
。 如果使用
WorkerType
和NumberOfWorkers
,请勿设置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 个 DPU。默认为 10 个 DPU。此任务类型不能具有小数 DPU 分配。
-
-
WorkerType
– UTF-8 字符串(有效值:Standard=""
|G.1X=""
|G.2X=""
|G.025X=""
)。任务运行时分配的预定义工作线程的类型。接受的值为 Standard、G.1X、G.2X 或 G.025X。
-
对于
Standard
工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 50GB 磁盘,并且每个工作线程提供 2 个执行器。 -
对于
G.1X
工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 64GB 磁盘,并且每个工作线程提供 1 个执行器。 -
对于
G.2X
工作线程类型,每个工作线程提供 84 个 vCPU、32 GB 内存和 128GB 磁盘,并且每个工作线程提供 1 个执行器。 -
对于
G.025X
Worker 类型,每个 Worker 映射到 0.25 个 DPU(2 个 vCPU,4 GB 内存,64 GB 磁盘),并且每个 Worker 提供 1 个执行器。我们建议为低容量串流任务使用此 Worker 类型。此 Worker 类型仅适用于 Amazon Glue 版本 3.0 串流任务。
-
-
NumberOfWorkers
– 数字 (integer)。任务运行时分配的定义
workerType
的工作线程数。 -
SecurityConfiguration
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。运行该任务将使用的
SecurityConfiguration
结构的名称。 -
用于进行安全日志记录的日志组的名称,可在 Amazon CloudWatch 中使用 Amazon KMS 进行服务器端加密。此名称可以是
/aws-glue/jobs/
,在这种情况下,默认加密为NONE
。如果您添加角色名称和SecurityConfiguration
名称(换句话说,/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/
),则该安全配置将用于加密该日志组。 -
NotificationProperty
– 一个 NotificationProperty 对象。指定任务运行通知的配置属性。
-
GlueVersion
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Custom string pattern #15 匹配。Glue 版本决定了 Amazon Glue 支持的 Apache Spark 和 Python 版本。Python 版本指示了 Spark 类型的任务支持的版本。
有关可用的 Amazon Glue 版本以及相应的 Spark 和 Python 版本的更多信息,请参阅开发人员指南中的 Glue 版本。
在未指定 Glue 版本的情况下创建的任务默认为 Glue 0.9。
-
仅当弹性伸缩任务运行完成时才会填充此字段,等于任务运行生命周期内每个执行器运行的总时间(以秒为单位)乘以 DPU 因子(
G.1X
Worker 为 1,G.2X
Worker 为 2,G.025X
Worker 为 0.25)。此值可能不同于弹性伸缩任务中的executionEngineRuntime
*MaxCapacity
,因为在给定时间运行的执行程序数量可能少于MaxCapacity
。因此,DPUSeconds
的值可能小于executionEngineRuntime
*MaxCapacity
。 -
ExecutionClass
– UTF-8 字符串,长度不超过 16 个字节(有效值:FLEX=""
|STANDARD=""
)。指示任务是使用标准执行类还是灵活执行类运行的。标准执行类非常适合需要快速任务启动和专用资源的时间敏感型工作负载。
灵活执行类适用于启动和完成时间可能不同的时间不敏感型作业。
只有具有 Amazon Glue 版本 3.0 和以上版本以及命令类型
glueetl
的任务才允许将ExecutionClass
设置为FLEX
。灵活的执行类可用于 Spark 任务。
Predecessor 结构
在触发此任务运行的条件触发器的谓词中使用的任务运行。
字段
-
JobName
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。任务运行前身使用的任务定义的名称。
-
RunId
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。任务运行前身的任务运行 ID。
JobBookmarkEntry 结构
定义任务可以恢复处理的点。
字段
BatchStopJobRunSuccessfulSubmission 结构
记录成功的对停止指定 JobRun
的请求。
字段
-
JobName
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。已停止的任务运行中使用的任务定义的名称。
-
JobRunId
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。已停止的任务运行的
JobRunId
。
BatchStopJobRunError 结构
记录在尝试停止指定的任务运行时出现的错误。
字段
-
JobName
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。相关任务运行中使用的任务业定义的名称。
-
JobRunId
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。相关任务运行的
JobRunId
。 -
ErrorDetail
– 一个 ErrorDetail 对象。指定有关遇到的错误的详细信息。
操作
StartJobRun 操作(Python:start_job_run)
使用任务定义启动任务运行。
请求
-
JobName
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要使用的任务定义的名称。
-
JobRunId
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要重试的以前的
JobRun
的 ID。 -
每个键是一个 UTF-8 字符串。
每个值是一个 UTF-8 字符串。
专门针对此运行的任务参数。对于此任务运行,它们会替换任务定义本身中的默认参数集。
可以在此处指定您自己的任务执行脚本使用的参数以及 Amazon Glue 本身使用的参数。
可能会记录任务参数。不要将明文密钥作为参数传递。如果您想要将密钥保留在任务内,则请通过 Amazon Glue 连接、Amazon Secrets Manager 或其他密钥管理机制检索密钥。
有关如何指定和使用您自己的任务参数的信息,请参阅开发人员指南中的在 Python 中调用 Amazon Glue API 主题。
有关 Amazon Glue 用于设置任务的键值对的信息,请参阅开发人员指南中的由 Amazon Glue 使用的特殊参数主题。
-
AllocatedCapacity
– 数字 (integer)。此字段已弃用。请改用
MaxCapacity
。要分配给此 JobRun 的 Amazon Glue 数据处理单元(DPU)的数量。您可以分配至少 2 个 DPU;默认值为 10。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 Amazon Glue 价格页面
。 -
JobRun
超时(分钟) 这是任务运行在终止并进入TIMEOUT
状态前可以使用资源的最长时间。此值会覆盖父任务中设置的超时值。串流任务没有超时。非串流任务的默认值为 2880 分钟(48 小时)。
-
此任务运行时可分配的 Amazon Glue 数据处理单元(DPU)的数量。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。有关更多信息,请参阅 Amazon Glue 价格页面
。 如果使用
WorkerType
和NumberOfWorkers
,请勿设置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 个 DPU。默认为 10 个 DPU。此任务类型不能具有小数 DPU 分配。
-
-
SecurityConfiguration
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。运行该任务将使用的
SecurityConfiguration
结构的名称。 -
NotificationProperty
– 一个 NotificationProperty 对象。指定任务运行通知的配置属性。
-
WorkerType
– UTF-8 字符串(有效值:Standard=""
|G.1X=""
|G.2X=""
|G.025X=""
)。任务运行时分配的预定义工作线程的类型。接受的值为 Standard、G.1X、G.2X 或 G.025X。
-
对于
Standard
工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 50GB 磁盘,并且每个工作线程提供 2 个执行器。 -
对于
G.1X
工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 64GB 磁盘,并且每个工作线程提供 1 个执行器。 -
对于
G.2X
工作线程类型,每个工作线程提供 84 个 vCPU、32 GB 内存和 128GB 磁盘,并且每个工作线程提供 1 个执行器。 -
对于
G.025X
Worker 类型,每个 Worker 映射到 0.25 个 DPU(2 个 vCPU,4 GB 内存,64 GB 磁盘),并且每个 Worker 提供 1 个执行器。我们建议为低容量串流任务使用此 Worker 类型。此 Worker 类型仅适用于 Amazon Glue 版本 3.0 串流任务。
-
-
NumberOfWorkers
– 数字 (integer)。任务运行时分配的定义
workerType
的工作线程数。 -
ExecutionClass
– UTF-8 字符串,长度不超过 16 个字节(有效值:FLEX=""
|STANDARD=""
)。指示任务是使用标准执行类还是灵活执行类运行的。标准执行类非常适合需要快速任务启动和专用资源的时间敏感型工作负载。
灵活执行类适用于启动和完成时间可能不同的时间不敏感型作业。
只有具有 Amazon Glue 版本 3.0 和以上版本以及命令类型
glueetl
的任务才允许将ExecutionClass
设置为FLEX
。灵活的执行类可用于 Spark 任务。
响应
-
JobRunId
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。分配给此任务运行的 ID。
错误
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
ResourceNumberLimitExceededException
ConcurrentRunsExceededException
BatchStopJobRun 操作(Python:batch_stop_job_run)
停止指定的任务定义的一个或多次任务运行。
请求
-
JobName
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要停止其任务运行的任务定义的名称。
-
JobRunIds
– 必填:UTF-8 字符串数组,不少于 1 个或不超过 25 个字符串。应为该任务定义停止的
JobRunIds
列表。
响应
-
SuccessfulSubmissions
– BatchStopJobRunSuccessfulSubmission 对象的数组。已成功提交的要停止的 JobRun 列表。
-
Errors
– BatchStopJobRunError 对象的数组。尝试停止
JobRuns
时遇到的错误列表,包括遇到每个错误的JobRunId
和有关错误的详细信息。
错误
InvalidInputException
InternalServiceException
OperationTimeoutException
GetJobRun 操作(Python:get_job_run)
检索给定任务运行的元数据。
请求
-
JobName
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。正在运行的任务定义的名称。
-
RunId
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。任务运行的 ID。
-
如果应返回运行前身的列表,则为 True。
响应
-
JobRun
– 一个 JobRun 对象。请求的任务运行元数据。
错误
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
GetJobRuns 操作(Python:get_job_runs)
检索给定任务定义的所有运行的元数据。
请求
-
JobName
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要检索其所有任务运行的作业定义的名称。
-
延续标记 (如果这是延续调用)。
-
MaxResults
– 数字(整数),不小于 1 或大于 1000。响应的最大大小。
响应
-
JobRuns
– JobRun 对象的数组。任务运行元数据对象的列表。
-
延续令牌(如果尚未返回所有请求的任务运行)。
错误
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
GetJobBookmark 操作(Python:get_job_bookmark)
返回有关任务书签条目的信息。
更多有关启用和使用作业书签的信息,请参阅:
请求
响应
-
JobBookmarkEntry
– 一个 JobBookmarkEntry 对象。用于定义任务可以恢复处理的点的结构。
错误
EntityNotFoundException
InvalidInputException
InternalServiceException
OperationTimeoutException
ValidationException
GetJobBookmarks 操作(Python:get_job_bookmarks)
返回有关任务书签条目的信息。该列表按版本号递减的顺序排列。
更多有关启用和使用作业书签的信息,请参阅:
请求
响应
-
JobBookmarkEntries
– JobBookmarkEntry 对象的数组。用于定义任务可以恢复处理的点的任务书签条目列表。
-
延续令牌,如果返回所有条目,则其值为 1;如果未返回所有请求的任务运行,则其值 > 1。
错误
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
ResetJobBookmark 操作(Python:reset_job_bookmark)
重置书签条目。
更多有关启用和使用作业书签的信息,请参阅:
响应
-
JobBookmarkEntry
– 一个 JobBookmarkEntry 对象。重置的书签条目。
错误
EntityNotFoundException
InvalidInputException
InternalServiceException
OperationTimeoutException