本文为您介绍跨业务流程、跨工作空间场景下,如何设置节点的调度依赖。并通过该方案实现下游业务流程等待上游业务流程执行成功后,才可执行。
背景信息
DataWorks上游节点的输出作为下游节点的输出可形成节点依赖关系,基于该特性,可实现跨业务流程依赖,跨工作空间依赖。更多关于该特性的说明,请参见调度依赖配置指引。
跨业务流程配置调度依赖
下游业务流程中的节点依赖上游业务流程中某节点的节点输出即可实现跨业务流程依赖,下面以多分支结果的业务流程实现跨业务流程依赖为例说明如何设置跨业务流程节点依赖关系。
包含多个分支结果的业务流程如果要实现跨业务流程依赖,您需要使用虚拟节点对多个分支节点进行汇总,再手动将该汇总节点的输出作为下游业务流程统筹根节点的输入,以此方式实现跨业务流程依赖。
说明
- 虚拟节点属于控制类节点,它是不产生任何数据的空跑节点,通常作为业务流程统筹节点的根节点(例如,控制该业务流程整体调度时间,与是否调度控制),或作为业务流程中多个分支节点的汇总输出节点使用。
- 一个业务流程存在多个分支结果时,您需要新建一个虚拟节点(例如,
业务流程_end_虚拟节点
),业务流程_end_虚拟节点
依赖上游多个分支结果,当业务流程_end_虚拟节点
执行成功,则表示该业务流程执行完成。
当包含多个分支结果的业务流程需要实现跨业务流程依赖时,则可以使用虚拟节点配置上下游依赖关系。示例如下。
- 创建两个业务流程:业务流程1、业务流程2,业务流程1作为业务流程2的上游。
- 上游业务流程1创建如下虚拟节点。
业务流程1_start_虚拟节点
:统筹起始节点,作为上游业务流程1中多分支节点的统筹起始节点。业务流程1_end_虚拟节点
:汇总输出节点,用于对上游业务流程1的多分支节点进行汇总输出。
- 下游业务流程2创建如下虚拟节点。
业务流程2_start_虚拟节点
:统筹起始节点,下游业务流程2中多分支节点的统筹起始节点。业务流程2_end_虚拟节点
:汇总输出节点,用于对下游业务流程2的多分支节点进行汇总输出。
- 上下游业务流程的依赖关系:配置
业务流程1_end_虚拟节点
的输出作为业务流程2_start_虚拟节点
的输入,从而实现跨业务流程调度依赖。