airflow.providers.microsoft.azure.operators.synapse

AzureSynapseRunSparkBatchOperator

在 Azure Synapse 上执行 Spark 作业。

AzureSynapsePipelineRunLink

构造一个链接以监控 Azure Synapse 中的管道运行。

AzureSynapseRunPipelineOperator

执行 Synapse 管道。

模块内容

class airflow.providers.microsoft.azure.operators.synapse.AzureSynapseRunSparkBatchOperator(*, azure_synapse_conn_id=AzureSynapseHook.default_conn_name, wait_for_termination=True, spark_pool='', payload, timeout=60 * 60 * 24 * 7, check_interval=60, **kwargs)[source]

基础: airflow.models.BaseOperator

在 Azure Synapse 上执行 Spark 作业。

参数:
  • azure_synapse_conn_id (str) – 用于连接到 Azure Synapse 的连接标识符。

  • wait_for_termination (bool) – 等待作业运行终止的标志。

  • spark_pool (str) – 用于提交作业的目标 synapse spark 池

  • payload (azure.synapse.spark.models.SparkBatchJobOptions) – 与 Livy 兼容的 payload,表示用户想要提交的 spark 作业

  • timeout (int) – 对于非异步等待,等待作业达到终端状态的超时时间(秒)。仅当 wait_for_termination 为 True 时使用。

  • check_interval (int) – 对于非异步等待,检查作业运行状态的时间间隔(秒)。仅当 wait_for_termination 为 True 时使用。

template_fields: collections.abc.Sequence[str] = ('azure_synapse_conn_id', 'spark_pool')[source]
template_fields_renderers[source]
ui_color = '#0678d4'[source]
job_id = None[source]
azure_synapse_conn_id = 'azure_synapse_default'[source]
wait_for_termination = True[source]
spark_pool = ''[source]
payload[source]
timeout = 604800[source]
check_interval = 60[source]
property hook[source]

创建并返回一个 AzureSynapseHook (已缓存)。

execute(context)[source]

创建 operator 时实现此方法。

Context 与渲染 jinja 模板时使用的字典相同。

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

on_kill()[source]

当任务实例被杀死时,重写此方法以清理子进程。

在 operator 中使用 threading, subprocess 或 multiprocessing 模块的任何地方都需要清理,否则会留下僵尸进程。

基础: airflow.sdk.BaseOperatorLink

构造一个链接以监控 Azure Synapse 中的管道运行。

name = 'Monitor Pipeline Run'[source]

链接名称。这将是任务 UI 上的按钮名称。

get_fields_from_url(workspace_url)[source]

从 Synapse 工作区 URL 中提取 workspace_name、subscription_id 和 resource_group。

参数:

workspace_url – 工作区 URL。

链接到外部系统。

参数:
返回:

到外部系统的链接

class airflow.providers.microsoft.azure.operators.synapse.AzureSynapseRunPipelineOperator(pipeline_name, azure_synapse_conn_id, azure_synapse_workspace_dev_endpoint, wait_for_termination=True, reference_pipeline_run_id=None, is_recovery=None, start_activity_name=None, parameters=None, timeout=60 * 60 * 24 * 7, check_interval=60, **kwargs)[source]

基础: airflow.models.BaseOperator

执行 Synapse 管道。

参数:
  • pipeline_name (str) – 要执行的管道名称。

  • azure_synapse_conn_id (str) – Azure Synapse 的 Airflow 连接 ID。

  • azure_synapse_workspace_dev_endpoint (str) – Azure Synapse 工作区开发端点。

  • wait_for_termination (bool) – 等待管道运行终止的标志。

  • reference_pipeline_run_id (str | None) – 管道运行标识符。如果指定此运行 ID,将使用指定运行的参数创建一个新运行。

  • is_recovery (bool | None) – 恢复模式标志。如果恢复模式设置为 True,指定的引用管道运行和新运行将归入同一个 groupId 下。

  • start_activity_name (str | None) – 在恢复模式下,重跑将从这个活动开始。如果未指定,所有活动都将运行。

  • parameters (dict[str, Any] | None) – 管道运行的参数。这些参数在管道中通过 @pipeline().parameters.parameterName 引用,并且仅在未指定 reference_pipeline_run_id 时使用。

  • timeout (int) – 对于非异步等待,等待管道达到终端状态的超时时间(秒)。仅当 wait_for_termination 为 True 时使用。

  • check_interval (int) – 对于非异步等待,检查管道运行状态的时间间隔(秒)。仅当 wait_for_termination 为 True 时使用。

template_fields: collections.abc.Sequence[str] = ('azure_synapse_conn_id',)[source]
azure_synapse_conn_id[source]
pipeline_name[source]
azure_synapse_workspace_dev_endpoint[source]
wait_for_termination = True[source]
reference_pipeline_run_id = None[source]
is_recovery = None[source]
start_activity_name = None[source]
parameters = None[source]
timeout = 604800[source]
check_interval = 60[source]
property hook[source]

创建并返回一个 AzureSynapsePipelineHook (已缓存)。

execute(context)[source]

创建 operator 时实现此方法。

Context 与渲染 jinja 模板时使用的字典相同。

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

execute_complete(event)[source]

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

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

on_kill()[source]

当任务实例被杀死时,重写此方法以清理子进程。

在 operator 中使用 threading, subprocess 或 multiprocessing 模块的任何地方都需要清理,否则会留下僵尸进程。

此条目是否有帮助?