全部产品
Search
文档中心

大数据开发治理平台 DataWorks:归并节点

更新时间:Nov 13, 2024

本文为您介绍归并节点的概念,以及如何新建归并节点、定义归并逻辑,并通过实践案例为您展示归并节点的调度配置和运行详情。

背景信息

归并节点是DataStudio中提供的逻辑控制系列节点中的一类,可以对上游节点的运行状态进行归并,用于解决分支节点下游节点的依赖挂载和运行触发问题。

目前归并节点的逻辑定义不支持选择节点运行状态,仅支持将分支节点的多个下游节点归并为运行成功的状态,以便下游节点能够直接挂载归并节点作为依赖。

例如,分支节点C定义了两个逻辑互斥的分支走向C1和C2,不同分支使用不同的逻辑写入同一张MaxCompute表,如果下游节点B依赖此MaxCompute表的产出,则必须使用归并节点J先将分支归并后,再把归并节点J作为B的上游依赖。如果直接把B挂载在C1、C2下,任何时刻,C1和C2总有一个会因分支条件不满足,而显示实例状态为分支未被选中,而B也会因为上游有未被选中跳过运行的节点,实际也会是分支未被选中,空跑跳过的状态,节点并没有实际运行,所有下游节点均会如此。

使用限制

仅DataWorks标准版及以上版本,才可使用归并节点功能。购买或升级DataWorks相应版本,详情请参见DataWorks各版本详解

创建归并节点

  1. 进入数据开发页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据开发与治理 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发

  2. 鼠标悬停至新建图标,单击新建节点 > 通用 > 归并节点

  3. 新建节点对话框中,输入节点名称,并选择路径

  4. 单击确认

定义归并逻辑

新建归并节点后 ,进入节点编辑页面定义归并逻辑。归并节点运行逻辑

  1. 添加需要归并的分支节点,该节点作为归并节点的父节点。

    添加归并分支区域,通过节点名称、节点ID或节点输出查找相应父节点,并单击添加图标添加为分支节点。

    说明

    当需要归并多个分支节点时,您需多次重复执行添加操作。

  2. 归并条件设置区域,配置分支节点的归并条件。

    您需要配置归并逻辑及分支节点的运行状态。

    • 归并逻辑条件包括:

      • :上游所有分支节点均需处于终态(即运行完成),并且均满足其设置的运行状态时,执行结果设置区域设置的本节点运行状态才会生效。

      • :上游所有节点均需处于终态(即运行完成),并且任意分支节点满足其设置的运行状态时,执行结果设置区域设置的本节点运行状态才会生效。

    • 节点运行完成后的状态包括:

      • 成功:节点运行成功。

      • 失败:节点运行失败。

      • 分支未运行:节点未运行。

  3. 执行结果设置区域,设置本节点的运行状态。

    说明

    当前仅支持设置本节点的运行状态为成功

如上图示例:

  • 添加分支节点A、B为当前归并节点的上游节点。

  • 节点A的运行状态设置为成功分支未运行失败,即节点A运行完成即可。

  • 节点B的运行状态设置为成功分支未运行,即节点B运行完成且节点B运行未失败。

  • 归并逻辑条件设置为

因此,当节点A运行完成,并且节点B运行完成且不失败,当前归并节点的成功运行状态才会生效。

单击节点编辑页面右侧的调度配置,即可设置归并节点的调度属性。详情请参见配置基础属性

归并节点示例

在下游节点中,添加分支节点作为上游节点后,通过选择对应的分支节点输出来定义不同条件下的分支走向。例如在下图所示的业务流程中,分支1分支2均为分支节点的两个下游节点。示例

分支1依赖于autotest.fenzhi121902_1输出。依赖

分支2依赖于autotest.fenzhi121902_2输出。输出

运行任务

您可以在运行日志中查看满足分支条件、被选中运行的分支下游节点的运行情况。运行任务

您可以在运行日志中查看到不满足分支条件、未被选中运行的分支下游节点,被置为跳过。运行日志

归并节点的下游节点正常运行。正常运行