【问题标题】:Is there a way to create dependencies between pipelines? (A single pipeline depend on +3 others)有没有办法在管道之间创建依赖关系? (单个管道取决于 +3 其他)
【发布时间】:2022-07-28 14:33:41
【问题描述】:

我的 Azure 数据工厂有 5 个管道,每个管道将数据复制到不同的表中。对其中一些表存在依赖关系,表 D 和 E 依赖于表 A、B 和 C。就像在这个例子中一样:

Table dependencies & Pipelines

我正在做的刷新所有数据是以下执行顺序:

执行管道到表 A > 执行管道到表 B > 执行管道到表 C > 执行管道到表 D > 执行管道到表 E。

Pipelines Execution Order

我可以在流水线到表 D 之前执行流水线到表 E 没有问题,但是它们都不能在表 A、B 和 C 的流水线之前执行。

我必须使它更有条理和更容易安排的想法是更改管道 D 并添加 3 个步骤,这些步骤将为表 A、B 和 C 执行管道。在表 E 的管道上,我添加了一个执行管道 D 的步骤. 就像在例子中:

Pipelines Idea

但是,这会产生一种对表 E 和表 D 的依赖,这是我不想要的。如果我出于任何原因需要更新 JUST 表 E,它将无法更新,因为我需要先更新表 D。

我希望表 D 和 E 的两个管道都有一种验证,如果表 A、B 和 C 的管道已经运行,那么它们就可以运行。

有没有办法让这种依赖关系更有条理?

【问题讨论】:

    标签: azure azure-data-factory pipeline azure-data-factory-pipeline


    【解决方案1】:

    要使管道相互依赖,您可以创建一个触发器并使这些触发器依赖于其他触发器。

    要创建依赖管道,我们可以使用Tumbling window trigger

    Pipeline to table A, B, C 创建触发器

    触发器>>新建/编辑>>选择触发器>>新建>>类型翻转窗口>>配置属性>>保存

    使Pipeline to table D, E 依赖于Pipeline to table A, B, C

    选择触发器 > 高级 > 新建,然后选择要依赖的触发器,并具有适当的偏移和大小。这将创建依赖于触发器。

    例子

    在上面的示例中,Trigger 4 是为 pipeline 4 创建的,并且在依赖项中添加了分别为管道 1、2、3 创建的触发器 1、2、3。

    这个依赖Tumbling window trigger 仅在服务内的另一个触发器已成功执行时才会执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      相关资源
      最近更新 更多