airflow.providers.google.cloud.operators.datafusion

此模块包含 Google DataFusion 操作符。

模块内容

DataFusionPipelineLinkHelper

管道链接的帮助类。

CloudDataFusionRestartInstanceOperator

重启单个 Data Fusion 实例。

CloudDataFusionDeleteInstanceOperator

删除单个 Date Fusion 实例。

CloudDataFusionCreateInstanceOperator

在指定的项目和位置中创建新的 Data Fusion 实例。

CloudDataFusionUpdateInstanceOperator

更新单个 Data Fusion 实例。

CloudDataFusionGetInstanceOperator

获取单个 Data Fusion 实例的详细信息。

CloudDataFusionCreatePipelineOperator

创建 Cloud Data Fusion 管道。

CloudDataFusionDeletePipelineOperator

删除 Cloud Data Fusion 管道。

CloudDataFusionListPipelinesOperator

列出 Cloud Data Fusion 管道。

CloudDataFusionStartPipelineOperator

启动 Cloud Data Fusion 管道。适用于批量和流式管道。

CloudDataFusionStopPipelineOperator

停止 Cloud Data Fusion 管道。适用于批量和流式管道。

class airflow.providers.google.cloud.operators.datafusion.DataFusionPipelineLinkHelper[源代码]

管道链接的帮助类。

警告

此类已弃用。请考虑改用 resource_path_to_dict()

static get_project_id(instance)[源代码]
class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionRestartInstanceOperator(*, instance_name, location, project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[源代码]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

重启单个 Data Fusion 实例。

在操作结束时,实例将完全重启。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:重启 DataFusion 实例

参数
  • instance_name (str) – 要重启的实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • project_id (str) – 实例所属的 Google Cloud 项目的 ID。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'impersonation_chain')[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionDeleteInstanceOperator(*, instance_name, location, project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[源代码]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

删除单个 Date Fusion 实例。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:删除 DataFusion 实例

参数
  • instance_name (str) – 要重启的实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • project_id (str) – 实例所属的 Google Cloud 项目的 ID。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'impersonation_chain')[源代码]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionCreateInstanceOperator(*, instance_name, instance, location, project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

在指定的项目和位置中创建新的 Data Fusion 实例。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:创建 DataFusion 实例

参数
  • instance_name (str) – 要创建的实例的名称。

  • instance (dict[str, Any]) – Instance 的一个实例。 https://cloud.google.com/data-fusion/docs/reference/rest/v1beta1/projects.locations.instances#Instance

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • project_id (str) – 实例所属的 Google Cloud 项目的 ID。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'instance', 'impersonation_chain')[source]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionUpdateInstanceOperator(*, instance_name, instance, update_mask, location, project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

更新单个 Data Fusion 实例。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:更新 DataFusion 实例

参数
  • instance_name (str) – 要创建的实例的名称。

  • instance (dict[str, Any]) – Instance 的一个实例。 https://cloud.google.com/data-fusion/docs/reference/rest/v1beta1/projects.locations.instances#Instance

  • update_mask (str) – 字段掩码用于指定更新将覆盖实例资源中的哪些字段。updateMask 中指定的字段是相对于资源而言的,而不是完整的请求。如果字段在掩码中,则会被覆盖。如果用户未提供掩码,则将覆盖所有受支持的字段(目前为标签和选项)。以逗号分隔的完全限定的字段名称列表。示例:“user.displayName,photo”。https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?_ga=2.205612571.-968688242.1573564810#google.protobuf.FieldMask

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • project_id (str) – 实例所属的 Google Cloud 项目的 ID。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'instance', 'impersonation_chain')[source]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionGetInstanceOperator(*, instance_name, location, project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

获取单个 Data Fusion 实例的详细信息。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:获取 DataFusion 实例

参数
  • instance_name (str) – 实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • project_id (str) – 实例所属的 Google Cloud 项目的 ID。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'impersonation_chain')[source]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionCreatePipelineOperator(*, pipeline_name, pipeline, instance_name, location, namespace='default', project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

创建 Cloud Data Fusion 管道。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:创建 DataFusion 管道

参数
  • pipeline_name (str) – 您的管道名称。

  • pipeline (dict[str, Any]) – 管道定义。有关更多信息,请查看: https://docs.cdap.io/cdap/current/en/developer-manual/pipelines/developing-pipelines.html#pipeline-configuration-file-format

  • instance_name (str) – 实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • namespace (str) – 如果您的管道属于基本版实例,则命名空间 ID 始终为 default。如果您的管道属于企业版实例,则可以创建命名空间。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'pipeline_name', 'impersonation_chain')[source]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionDeletePipelineOperator(*, pipeline_name, instance_name, location, version_id=None, namespace='default', project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

删除 Cloud Data Fusion 管道。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:删除 DataFusion 管道

参数
  • pipeline_name (str) – 您的管道名称。

  • version_id (str | None) – 要删除的管道版本

  • instance_name (str) – 实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • namespace (str) – 如果您的管道属于基本版实例,则命名空间 ID 始终为 default。如果您的管道属于企业版实例,则可以创建命名空间。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'version_id', 'pipeline_name', 'impersonation_chain')[source]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionListPipelinesOperator(*, instance_name, location, artifact_name=None, artifact_version=None, namespace='default', project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

列出 Cloud Data Fusion 管道。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:列出 DataFusion 管道

参数
  • instance_name (str) – 实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • artifact_version (str | None) – 用于过滤实例的工件版本

  • artifact_name (str | None) – 用于过滤实例的工件名称

  • namespace (str) – 如果您的管道属于基本版实例,则命名空间 ID 始终为 default。如果您的管道属于企业版实例,则可以创建命名空间。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'artifact_name', 'artifact_version', 'impersonation_chain')[source]
execute(context)[source]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionStartPipelineOperator(*, pipeline_name, instance_name, location, pipeline_type=DataFusionPipelineType.BATCH, runtime_args=None, success_states=None, namespace='default', pipeline_timeout=5 * 60, project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, asynchronous=False, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), poll_interval=3.0, **kwargs)[源代码]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

启动 Cloud Data Fusion 管道。适用于批量和流式管道。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:启动 DataFusion 管道

参数
  • pipeline_name (str) – 您的管道名称。

  • pipeline_type (airflow.providers.google.cloud.utils.datafusion.DataFusionPipelineType) – 可选的管道类型(默认为 BATCH)。

  • instance_name (str) – 实例的名称。

  • success_states (list[str] | None) – 如果提供,操作符将等待管道进入提供的状态之一。

  • pipeline_timeout (int) – 操作符应等待管道进入 success_states 之一的时间(以秒为单位)。仅在提供了 success_states 时有效。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • runtime_args (dict[str, Any] | None) – 要传递给管道的可选运行时参数

  • namespace (str) – 如果您的管道属于基本版实例,则命名空间 ID 始终为 default。如果您的管道属于企业版实例,则可以创建命名空间。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

  • asynchronous – 标志,用于在将管道 ID 提交到 Data Fusion API 后返回。这对于提交长时间运行的管道并使用 CloudDataFusionPipelineStateSensor 异步等待它们很有用

  • deferrable (bool) – 在可延迟模式下运行操作符。与 asynchronous 参数无关。虽然 asynchronous 参数可以使用 sleep() 方法等待直到管道达到终止状态,但 deferrable 模式使用异步调用检查状态。不能同时使用 asynchronous 和 deferrable 参数。

  • poll_interval – 轮询状态的间隔时间(以秒为单位)。仅在可延迟模式下使用。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'pipeline_name', 'runtime_args', 'impersonation_chain')[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

execute_complete(context, event)[源代码]

充当触发器触发时的回调 - 立即返回。

依赖于触发器抛出异常,否则它假定执行成功。

class airflow.providers.google.cloud.operators.datafusion.CloudDataFusionStopPipelineOperator(*, pipeline_name, instance_name, location, namespace='default', project_id=PROVIDE_PROJECT_ID, api_version='v1beta1', gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[源代码]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

停止 Cloud Data Fusion 管道。适用于批量和流式管道。

另请参阅

有关如何使用此操作符的更多信息,请查看指南:停止 DataFusion 管道

参数
  • pipeline_name (str) – 您的管道名称。

  • instance_name (str) – 实例的名称。

  • location (str) – 处理请求的 Cloud Data Fusion 位置。

  • namespace (str) – 如果您的管道属于基本版实例,则命名空间 ID 始终为 default。如果您的管道属于企业版实例,则可以创建命名空间。

  • api_version (str) – 将请求的 API 版本,例如 “v3”。

  • 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 角色,列表中的第一个帐户向原始帐户授予此角色(已模板化)。

template_fields: collections.abc.Sequence[str] = ('instance_name', 'pipeline_name', 'impersonation_chain')[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

此条目是否有帮助?