虚拟节点属于控制类节点,它是不产生任何数据的空跑节点(即调度到该节点时,系统直接返回成功,不会真正执行、不会占用资源或阻塞下游节点运行),通常作为业务流程的统筹起始节点,或业务流程中多个分支节点的汇总输出节点使用。本文为您介绍虚拟节点的应用场景及创建使用。
应用场景
虚拟节点通常用于如下场景:
复杂依赖场景下的业务管理
当您的实际业务包含多个业务流程时,为了业务流程与业务流程之间便于管理,建议每个业务流程都使用虚拟节点设置一个空跑的统筹起始节点,使数据流转路径更加清晰。
调度无血缘关系的节点
当业务流程中的最终输出节点有多个分支输入节点,且输入节点没有依赖关系时,您需要将虚拟节点作为多个输入节点的上游,将工作空间根节点作为虚拟节点的上游,实现工作空间根节点调度该虚拟节点,虚拟节点调度下游业务节点。当整个业务流程需要统一调度时间时,您也可以使用该方式指定虚拟节点的定时时间,来控制各分支节点的最早调度运行时间。
说明工作空间根节点作为上游依赖时,不会呈现在业务流程面板中。您可以在任务提交发布后,进入运维中心查看。运维中心详情请参见周期任务基本运维操作。
示例如下。
oss_数据同步_dqc
、rds_数据同步_dqc
节点不存在血缘关系,不能根据血缘关系来设置节点的调度依赖。此时,您可使用虚拟节点(workshop_start_dqc
)作为统筹起始节点,统一调度下游无血缘关系的分支节点,当下游分支节点满足运行条件时便会启动运行。说明通过离线同步将其他数据源中的数据同步至DataWorks,对于DataWorks上接收同步数据的表来说,在DataWorks侧不存在上游血缘关系。
管理多分支结果的业务流程,实现跨业务流程的调度依赖
包含多个分支结果的业务流程如果要实现跨业务流程依赖,您需要使用虚拟节点对多个分支节点进行汇总,再手动将该汇总节点的输出作为下游业务流程统筹起始节点的输入,以此方式实现跨业务流程依赖。详情请参见跨业务流程配置调度依赖。
说明一个业务流程存在多个分支结果时,您需要新建一个虚拟节点(例如,业务流程_end_虚拟节点),业务流程_end_虚拟节点依赖上游多个分支结果,当业务流程_end_虚拟节点执行成功,则表示该业务流程执行完成。
创建并使用虚拟节点
进入数据开发页面。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据开发。
创建业务流程。
如果您已有业务流程,则可以忽略该步骤。
鼠标悬停至图标,选择新建业务流程。
在新建业务流程对话框,输入业务名称。
单击新建。
创建虚拟节点。
鼠标悬停至图标,选择 。
您也可以找到相应的业务流程,右键单击业务流程,选择
。在新建节点对话框中,输入名称,并选择节点类型及路径。
说明节点名称必须是大小写字母、中文、数字、下划线(_)和小数点(.),且不能超过128个字符。
单击确认,进入虚拟节点编辑页面。
任务调度配置。
提交并发布节点任务。
单击工具栏中的图标,保存节点。
单击工具栏中的图标,提交节点任务。
在提交新版本对话框中,输入变更描述。
单击确定。
如果您使用的是标准模式的工作空间,任务提交成功后,需要将任务发布至生产环境进行发布。请单击顶部菜单栏左侧的任务发布。具体操作请参见发布任务。
查看周期调度任务。
单击编辑界面右上角的运维,进入生产环境运维中心。
查看运行的周期调度任务,详情请参见查看并管理周期任务。
如果您需要查看更多周期调度任务详情,可单击顶部菜单栏的运维中心,详情请参见运维中心概述。