分支节点是DataStudio中提供的逻辑控制系列节点中的一类,分支节点可以对上游赋值节点的输入参数进行判断,以此定义分支逻辑和不同逻辑条件时下游分支走向。
创建分支节点
1、在业务流程,通用节点中右键新建 分支节点
2、在新建节点对话框中,输入节点名称,并选择目标文件夹。
说明: 节点名称必须是大小写字母、中文、数字、下划线(_)和小数点(.),且不能超过128个字符。
配置分支节点
1、设置上游依赖关系
进入节点后,到右侧调度配置界面,设置上游赋值节点依赖关系
2、定义分支逻辑
在分支逻辑定义页面,单击添加分支,在弹出的配置分支定义对话框中,配置各项参数,参数解释如下:<br />
参数 | 描述 |
---|---|
分支条件 | 分支条件的说明如下: - 分支条件仅支持按照Python比较运算符定义逻辑判断条件。 - 如果运行态表达式取值为true,表示满足对应的分支条件。 - 如果运行态表达式解析报错,会将整个分支节点运行状态置为失败。 - 分支条件中支持使用全局变量和节点上下文定义的参数。例如,${input}可以是定义在分支节点的节点输入参数。 |
关联到节点输出 | 关联到节点输出的说明如下: - 节点输出供分支节点下游节点挂载依赖关系使用。 - 满足分支条件时,对应的关联的节点输出上挂载的下游节点被选中运行(同时需要参考该节点依赖的其它上游节点的状态)。 - 不满足分支条件时,对应的关联的节点输出上挂载的下游节点不会被选中执行,该下游节点会被置成 因为分支条件不满足而未运行 的状态。 |
分支描述 | 对分支的定义进行简要说明。例如,定义${input}==1和${input}>2两个分支。 |
说明:分支条件支持的Python比较运算符
以下假设变量a为10,变量b为20。
(注:字符型的判断,加上单引号即可,如:'${xx}' == 'xxx')
运算符 | 描述 | 示例 |
---|---|---|
== | 等于:比较对象是否相等。 | (a==b)返回false。 |
!= | 不等于:比较两个对象是否不相等。 | (a!=b)返回true。 |
<> | 不等于:比较两个对象是否不相等。 | (a<>b)返回true。这个运算符类似!=。 |
> | 大于:返回x是否大于y。 | (a>b)返回false。 |
< | 小于:返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。 | (a |
>= | 大于等于:返回x是否大于等于y。 | (a>=b)返回false。 |
<= | 小于等于:返回x是否小于等于y。 | (a<=b)返回true。 |
3、配置节点上下文参数
本节点输入参数,取值来源为上游赋值节点输出参数:outputs
本节点输出参数,是分支节点中系统默认添加的,取值由实际运行时决定
4、链路分析
- 当赋值节点输出为 a 时,走分支1下游所挂节点
- 当赋值节点输出为 b 时,走分支2下游所挂节点
分支下游节点依赖设置
创建两个普通的sql节点:分支a、分支b,写好sql逻辑后,分别在上游父节点依赖中,挂上关联的不同分支节点输出:
发布至运维调度
所有链路依赖关系设置完成后,将赋值节点、分支节点、分支下游sql节点都提交发布至运维中心,周期任务中展现依赖关系如下:
1、赋值节点日志输出情况:
2、分支节点日志情况:
3、分支下游sql节点日志情况:
- “分支a”实例状态为:实例运行成功,可在运行日志中看下详细运行日志状态
- “分支b”实例状态为:分支未被选中,运行日志中状态表现为该分支被跳过运行:
It's set condition-skip by task(706606933700-分支_xhb)
DataWorks百问百答历史记录 请点击这里查看>>
更多DataWorks技术和产品信息,欢迎加入【DataWorks钉钉交流群】