A zero load node is a control node that supports only dry-run scheduling and does not generate data. The scheduling system does not run the zero load node but directly returns a success response when the scheduling time of the zero load node arrives. This way, the zero load node does not occupy resources, and the descendant nodes of the zero load node can be run as expected. In most cases, a zero load node serves as the start node of a workflow or the output node of multiple branch nodes. This topic describes the use scenarios of a zero load node and how to create and use a zero load node.
Scenarios
- Manage workflows in scenarios in which dependencies between nodes are complexIf you have multiple workflows, we recommend that you configure a zero load node as a start node for each workflow. This way, you can manage workflows with ease and simplify the data transmission process.
- Schedule nodes that have no lineage relationshipIf the final output node of a workflow has multiple branch input nodes, and the input nodes have no dependencies, you can use a zero load node as the ancestor node of the input nodes and use the root node of a workspace as the ancestor node of the zero load node. This way, you can use the root node of the workspace to schedule the zero load node and use the zero load node to schedule the input nodes. If you want to schedule all nodes in the workflow in a unified manner, you can specify the scheduling time of the zero load node. After the zero load node is scheduled, the descendant nodes can be scheduled.Note If you configure the root node of a workspace as the ancestor node of other nodes, the root node is not displayed in the workflow. You can view the root node of the workspace in Operation Center only after the descendant nodes are committed and deployed. For more information, see Perform basic O&M operations on auto triggered nodes.The following figure shows how to schedule nodes that have no lineage relationship. In this figure, the
oss_Data synchronization_dqc
andrds_Data synchronization_dqc
nodes have no lineage relationship. Therefore, you cannot configure scheduling dependencies between the nodes based on lineage. In this case, you can use a zero load node namedworkshop_start_dqc
as the start node to schedule the descendant branch nodes that have no lineage relationship. The descendant branch nodes are run when specific conditions are met.Note If you synchronize data from other data sources to a data source in DataWorks by using batch synchronization nodes, the DataWorks tables to which data is synchronized have no ascendant lineage relationship. - Configure scheduling dependencies for branch nodes in a workflow on nodes in another workflowIf you want to configure scheduling dependencies for branch nodes in a workflow on nodes in another workflow, you must use a zero load node to aggregate the outputs of the branch nodes in the current workflow, and configure the output of the zero load node as the input of the start node of the other workflow. For more information, see Configure dependencies for nodes across workflows.Note If a workflow contains multiple branch nodes, you must create a zero load node and configure the zero load node as the descendant node of the branch nodes. For example, you can create a zero load node whose name is in the format of Workflow_end_Zero load node. This way, the zero load node depends on the outputs of the branch nodes. After the zero load node is successfully run, the workflow is complete.
Create and use a zero load node
Go to the DataStudio page.
Log on to the DataWorks console. In the left-side navigation pane, choose Data Modeling and Development > DataStudio. On the page that appears, select the desired workspace from the drop-down list and click Go to DataStudio.
Create a workflow.
If you have an existing workflow, skip this step.
Move the pointer over the icon and select Create Workflow.
In the Create Workflow dialog box, configure the Workflow Name parameter.
Click Create.
- Create a zero load node.
- Move the pointer over the icon and choose . You can also right-click the name of the workflow that you created and choose.
- In the Create Node dialog box, configure the Name, Node Type, and Path parameters. Note The node name cannot exceed 128 characters in length and can contain only letters, digits, underscores (_), and periods (.).
- Click Commit. The configuration tab of the zero load node appears.
- Move the pointer over the icon and choose .
- Configure scheduling properties for the zero load node. If you want the system to periodically run the zero load node, you can click Properties in the right-side navigation pane to configure scheduling properties for the node based on your business requirements.
- Configure basic properties for the zero load node. For more information, see Configure basic properties.
- Configure the scheduling cycle, rerun properties, and scheduling dependencies of the zero load node. For more information, see Configure time properties and Configure same-cycle scheduling dependencies. Note You must configure the Rerun and Parent Nodes parameters on the Properties tab before you commit the zero load node.
- Configure a resource group for the zero load node. For more information, see Configure the resource property.
Commit and deploy the task.
Click the icon in the top toolbar to save the task.
Click the icon in the top toolbar to commit the task.
In the Submit dialog box, configure the Change description parameter.
Click Confirm.
If you use a workspace in standard mode, you must deploy the task in the production environment after you commit the task. To deploy a task on a node, click Deploy in the top navigation bar of the DataStudio page. For more information, see Deploy tasks.
View the task.
Click Operation Center in the upper-right corner of the configuration tab of the corresponding node to go to Operation Center in the production environment.
View the scheduled task. For more information, see View and manage auto triggered tasks.
To view more information about the task, click Operation Center in the top navigation bar of the DataStudio page. For more information, see Overview.