airflow.providers.google.cloud.triggers.dataflow¶
属性¶
类¶
用于检查模板化作业是否完成的 Dataflow 触发器。 |
|
监控 Dataflow 作业是否已达到任一预期状态的触发器。 |
|
检查 Dataflow YAML 作业状态的 Dataflow 触发器。 |
|
检查与 Dataflow 作业相关的指标的触发器。 |
|
检查与 Dataflow 作业相关的自动扩缩事件的触发器。 |
|
检查与 Dataflow 作业相关的作业消息的触发器。 |
模块内容¶
- class airflow.providers.google.cloud.triggers.dataflow.TemplateJobStartTrigger(job_id, project_id, location=DEFAULT_DATAFLOW_LOCATION, gcp_conn_id='google_cloud_default', poll_sleep=10, impersonation_chain=None, cancel_timeout=5 * 60)[source]¶
继承自:
airflow.triggers.base.BaseTrigger
用于检查模板化作业是否完成的 Dataflow 触发器。
- 参数:
project_id (str | None) – 必需。作业启动所在的谷歌云项目 ID。
job_id (str) – 必需。作业 ID。
location (str) – 可选。作业执行的区域。如果设置为 None,将使用 DEFAULT_DATAFLOW_LOCATION 的值
gcp_conn_id (str) – 连接到谷歌云时使用的连接 ID。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选。要使用短期凭证模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链(该帐号将在请求中被模拟)。如果设置为字符串,该帐号必须向发起请求的帐号授予 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须向紧邻的前一个身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向发起请求的帐号授予此角色(模板化)。
cancel_timeout (int | None) – 可选。当任务被终止时,Operator 应等待多长时间(以秒为单位)才能成功取消管道。
- class airflow.providers.google.cloud.triggers.dataflow.DataflowJobStatusTrigger(job_id, expected_statuses, project_id, location=DEFAULT_DATAFLOW_LOCATION, gcp_conn_id='google_cloud_default', poll_sleep=10, impersonation_chain=None)[source]¶
继承自:
airflow.triggers.base.BaseTrigger
监控 Dataflow 作业是否已达到任一预期状态的触发器。
- 参数:
job_id (str) – 必需。作业 ID。
expected_statuses (set[str]) – 操作的预期状态。请参阅: https://cloud.google.com/dataflow/docs/reference/rest/v1b3/projects.jobs#Job.JobState
project_id (str | None) – 必需。作业启动所在的谷歌云项目 ID。
location (str) – 可选。作业执行的区域。如果设置为 None,将使用 DEFAULT_DATAFLOW_LOCATION 的值。
gcp_conn_id (str) – 连接到谷歌云时使用的连接 ID。
poll_sleep (int) – 两次连续检查作业调用之间的等待时间(以秒为单位)。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选。要使用短期凭证模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链(该帐号将在请求中被模拟)。如果设置为字符串,该帐号必须向发起请求的帐号授予 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须向紧邻的前一个身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向发起请求的帐号授予此角色(模板化)。
- async run()[source]¶
循环直到作业达到预期状态或终端状态。
如果客户端返回预期的作业状态,则生成状态为成功的 TriggerEvent。
如果客户端返回意外的终端作业状态或循环期间发生任何异常,则生成状态为错误的 TriggerEvent。
在任何其他情况下,Trigger 将等待存储在 self.poll_sleep 变量中的指定时间量。
- property async_hook: airflow.providers.google.cloud.hooks.dataflow.AsyncDataflowHook[source]¶
- class airflow.providers.google.cloud.triggers.dataflow.DataflowStartYamlJobTrigger(job_id, project_id, location=DEFAULT_DATAFLOW_LOCATION, gcp_conn_id='google_cloud_default', poll_sleep=10, cancel_timeout=5 * 60, expected_terminal_state=None, impersonation_chain=None)[source]¶
继承自:
airflow.triggers.base.BaseTrigger
检查 Dataflow YAML 作业状态的 Dataflow 触发器。
- 参数:
job_id (str) – 必需。作业 ID。
project_id (str | None) – 必需。作业启动所在的谷歌云项目 ID。
location (str) – 作业执行的区域。如果设置为 None,将使用 DEFAULT_DATAFLOW_LOCATION 的值。
gcp_conn_id (str) – 连接到谷歌云时使用的连接 ID。
poll_sleep (int) – 可选。轮询 Google Cloud Platform 以获取 Dataflow 作业信息之间的等待时间(以秒为单位)。
cancel_timeout (int | None) – 可选。当任务被终止时,Operator 应等待多长时间(以秒为单位)才能成功取消管道。
expected_terminal_state (str | None) – 可选。Dataflow 作业的预期终端状态,达到该状态时 Operator 任务将被设置为成功。批量作业默认为 'JOB_STATE_DONE',流处理作业默认为 'JOB_STATE_RUNNING'。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选。要使用短期凭证模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链(该帐号将在请求中被模拟)。如果设置为字符串,该帐号必须向发起请求的帐号授予 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须向紧邻的前一个身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向发起请求的帐号授予此角色(模板化)。
- class airflow.providers.google.cloud.triggers.dataflow.DataflowJobMetricsTrigger(job_id, project_id, location=DEFAULT_DATAFLOW_LOCATION, gcp_conn_id='google_cloud_default', poll_sleep=10, impersonation_chain=None, fail_on_terminal_state=True)[source]¶
继承自:
airflow.triggers.base.BaseTrigger
检查与 Dataflow 作业相关的指标的触发器。
- 参数:
job_id (str) – 必需。作业 ID。
project_id (str | None) – 必需。作业启动所在的谷歌云项目 ID。
location (str) – 可选。作业执行的区域。如果设置为 None,将使用 DEFAULT_DATAFLOW_LOCATION 的值。
gcp_conn_id (str) – 连接到谷歌云时使用的连接 ID。
poll_sleep (int) – 两次连续检查作业调用之间的等待时间(以秒为单位)。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选。要使用短期凭证模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链(该帐号将在请求中被模拟)。如果设置为字符串,该帐号必须向发起请求的帐号授予 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须向紧邻的前一个身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向发起请求的帐号授予此角色(模板化)。
fail_on_terminal_state (bool) – 如果设置为 True,并且作业达到终端状态,则触发器将生成状态为错误的 TriggerEvent。
- async run()[source]¶
循环直到返回终端作业状态或任何作业指标。
如果客户端返回任何作业指标且 fail_on_terminal_state 属性为 False,则生成状态为成功的 TriggerEvent。
如果客户端返回终端状态的作业状态且 fail_on_terminal_state 属性为 True,则生成状态为错误的 TriggerEvent。
如果循环期间发生任何异常,则生成状态为错误的 TriggerEvent。
在任何其他情况下,Trigger 将等待存储在 self.poll_sleep 变量中的指定时间量。
- property async_hook: airflow.providers.google.cloud.hooks.dataflow.AsyncDataflowHook[source]¶
- class airflow.providers.google.cloud.triggers.dataflow.DataflowJobAutoScalingEventTrigger(job_id, project_id, location=DEFAULT_DATAFLOW_LOCATION, gcp_conn_id='google_cloud_default', poll_sleep=10, impersonation_chain=None, fail_on_terminal_state=True)[source]¶
继承自:
airflow.triggers.base.BaseTrigger
检查与 Dataflow 作业相关的自动扩缩事件的触发器。
- 参数:
job_id (str) – 必需。作业 ID。
project_id (str | None) – 必需。作业启动所在的谷歌云项目 ID。
location (str) – 可选。作业执行的区域。如果设置为 None,将使用 DEFAULT_DATAFLOW_LOCATION 的值。
gcp_conn_id (str) – 连接到谷歌云时使用的连接 ID。
poll_sleep (int) – 两次连续检查作业调用之间的等待时间(以秒为单位)。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选。要使用短期凭证模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链(该帐号将在请求中被模拟)。如果设置为字符串,该帐号必须向发起请求的帐号授予 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须向紧邻的前一个身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向发起请求的帐号授予此角色(模板化)。
fail_on_terminal_state (bool) – 如果设置为 True,并且作业达到终端状态,则触发器将生成状态为错误的 TriggerEvent。
- async run()[source]¶
循环直到返回终端作业状态或任何自动扩缩事件。
如果客户端返回任何自动扩缩事件且 fail_on_terminal_state 属性为 False,则生成一个状态为 success 的 TriggerEvent。
如果客户端返回终端状态的作业状态且 fail_on_terminal_state 属性为 True,则生成状态为错误的 TriggerEvent。
如果循环期间发生任何异常,则生成状态为错误的 TriggerEvent。
在任何其他情况下,Trigger 将等待存储在 self.poll_sleep 变量中的指定时间量。
- property async_hook: airflow.providers.google.cloud.hooks.dataflow.AsyncDataflowHook[source]¶
- class airflow.providers.google.cloud.triggers.dataflow.DataflowJobMessagesTrigger(job_id, project_id, location=DEFAULT_DATAFLOW_LOCATION, gcp_conn_id='google_cloud_default', poll_sleep=10, impersonation_chain=None, fail_on_terminal_state=True)[source]¶
继承自:
airflow.triggers.base.BaseTrigger
检查与 Dataflow 作业相关的作业消息的触发器。
- 参数:
job_id (str) – 必需。作业 ID。
project_id (str | None) – 必需。作业启动所在的谷歌云项目 ID。
location (str) – 可选。作业执行的区域。如果设置为 None,将使用 DEFAULT_DATAFLOW_LOCATION 的值。
gcp_conn_id (str) – 连接到谷歌云时使用的连接 ID。
poll_sleep (int) – 两次连续检查作业调用之间的等待时间(以秒为单位)。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选。要使用短期凭证模拟的服务帐号,或获取列表中最后一个帐号的 access_token 所需的帐号链(该帐号将在请求中被模拟)。如果设置为字符串,该帐号必须向发起请求的帐号授予 Service Account Token Creator IAM 角色。如果设置为序列,列表中的身份必须向紧邻的前一个身份授予 Service Account Token Creator IAM 角色,列表中的第一个帐号向发起请求的帐号授予此角色(模板化)。
fail_on_terminal_state (bool) – 如果设置为 True,并且作业达到终端状态,则触发器将生成状态为错误的 TriggerEvent。
- async run()[source]¶
循环直到返回终端作业状态或任何作业消息。
如果客户端返回任何作业消息且 fail_on_terminal_state 属性为 False,则生成一个状态为 success 的 TriggerEvent。
如果客户端返回终端状态的作业状态且 fail_on_terminal_state 属性为 True,则生成状态为错误的 TriggerEvent。
如果循环期间发生任何异常,则生成状态为错误的 TriggerEvent。
在任何其他情况下,Trigger 将等待存储在 self.poll_sleep 变量中的指定时间量。
- property async_hook: airflow.providers.google.cloud.hooks.dataflow.AsyncDataflowHook[source]¶