更新时间:2022-02-24 GMT+08:00

For Each

功能

该节点可以指定一个子作业循环执行,并支持用一个数据集对子作业中的变量进行循环替换。

参数

用户可参考表1配置For Each节点的参数。

表1 属性参数

参数

是否必选

说明

节点名称

节点名称,可以包含中文、英文字母、数字、“_”“-”“/”“<”“>”等各类特殊字符,长度为1~128个字符。

循环执行的子作业

选择需要循环执行的子作业。

数据集

For循环算子需要定义一个数据集,这个数据集用来循环替换子作业中的变量。数据集的来源:

  • 来自于上游节点的输出,比如DLI SQL的

select语句,或者Shell节点的echo等。当前只支持Hive SQL、Spark SQL 和DLI SQL的select语句

  • 来自于一个CSV格式的文件。

子作业并发数

循环产生的子作业可以并发执行,您可设置并发数。

子作业后缀

For循环生成的子任务名称:For循环节点名称 + 下划线 + 后缀。

后缀可配置,如果不配置,则按照数字顺序依次递增。

作业运行参数

  • 节点属性中子作业参数配置为空时,子作业使用自身参数变量执行。
  • 节点属性中子作业参数配置后,将使用配置参数变量执行。节点属性中子作业参数配置的方法或者EL表达式,将根据父作业的环境变量读取替换。
表2 高级参数

参数

是否必选

说明

节点执行的最长时间

设置节点执行的超时时间,如果节点配置了重试,在超时时间内未执行完成,该节点将不会再重试,直接置为失败状态。

失败重试

节点执行失败后,是否重新执行节点

  • 是:重新执行节点,请配置以下参数。
    • 最大重试次数
    • 重试间隔时间(秒)
  • 否:默认值,不重新执行节点
说明:

如果作业节点配置了重试,并且配置了超时时间,该节点执行超时后将不会再重试,直接置为失败状态。

失败策略

节点执行失败后的操作:

  • 终止当前作业执行计划
  • 继续执行下一节点
  • 挂起当前作业执行计划
  • 终止后续节点执行计划