功能
该节点可以指定一个子作业循环执行,并支持用一个数据集对子作业中的变量进行循环替换。
参数
用户可参考下表配置For Each节点的参数。
属性参数
参数 | 是否必选 | 说明 |
---|---|---|
节点名称 | 是 | 节点名称,可以包含中文、英文字母、数字、“_”、“-”、“/”、“<”、“>”等各类特殊字符,长度为1~128个字符。 |
循环执行的子作业 | 是 | 选择需要循环执行的子作业。 |
数据集 | 是 | For循环算子需要定义一个数据集,这个数据集用来循环替换子作业中的变量,数据集的一行数据会对应一个子作业实例。数据集的来源包括: 来自于上游节点的输出。例如DLI SQL、Hive SQL、Spark SQL的select语句,或者Shell节点的echo等。使用EL表达式为:#{Job.getNodeOutput('preNodeName')},即前一个节点的输出值。 来自于给定的数组。如一维数组:[['001'],['002'],['003']] 。 |
子作业并发数 | 是 | 循环产生的子作业可以并发执行,您可设置并发数。 |
子作业实例名称后缀 | 否 | For循环生成的子任务名称:For循环节点名称 + 下划线 + 后缀。后缀可配置,如果不配置,则按照数字顺序依次递增。 |
作业运行参数 | 否 | 仅当子作业配置作业参数后,出现该参数。 节点属性中子作业参数配置为空时,子作业使用自身参数变量执行。 节点属性中子作业参数配置后,将使用配置参数变量执行。节点属性中子作业参数配置的方法或者EL表达式,将根据父作业的环境变量读取替换。 |
高级参数
参数 | 是否必选 | 说明 |
---|---|---|
节点执行的最长时间 | 是 | 设置节点执行的超时时间,如果节点配置了重试,在超时时间内未执行完成,该节点将不会再重试,直接置为失败状态。 |
失败重试 | 是 | 节点执行失败后,是否重新执行节点。 是:重新执行节点,请配置以下参数。 − 最大重试次数 − 重试间隔时间(秒) 否:默认值,不重新执行节点。 说明 如果作业节点配置了重试,并且配置了超时时间,该节点执行超时后将不会再重试,直接置为失败状态。 |
失败策略 | 是 | 节点执行失败后的操作: 终止当前作业执行计划:停止当前作业运行,当前作业实例状态显示为“失败”。 继续执行下一节点:忽略当前节点失败,当前作业实例状态显示为“忽略失败成功”。 挂起当前作业执行计划:暂停当前作业运行,当前作业实例状态显示为“等待运行”。 终止后续节点执行计划:停止后续节点的运行,当前作业实例状态显示为“失败”。 |
空跑 | 否 | 如果勾选了空跑,该节点不会实际执行,将直接返回成功。 |