Scenario | Node type | Description | Node code | Task type (specified by TaskType) |
Business management | Zero load node | A zero load node is a control node that supports dry-run scheduling and does not generate data. In most cases, a zero load node serves as the root node of a workflow and allows you to easily manage nodes and workflows. | 99 | VIRTUAL_NODE |
Event-based trigger | HTTP Trigger node | You can use this type of node if you want to trigger nodes in DataWorks to run after nodes in other scheduling systems finish running. Note DataWorks no longer allows you to create cross-tenant collaboration nodes. If you have used a cross-tenant collaboration node in your business, we recommend that you replace the cross-tenant collaboration node with an HTTP Trigger node. An HTTP Trigger node provides the same capabilities as a cross-tenant collaboration node. | 1114 | SCHEDULER_TRIGGER |
OSS object inspection node | You can use this type of node if you want to trigger a descendant node to run after Object Storage Service (OSS) objects are generated. | 239 | - |
FTP Check node | You can use this type of node if you want to trigger a descendant node to run after File Transfer Protocol (FTP) files are generated. Note FTP Check nodes are no longer supported in DataWorks. We recommend that you replace FTP Check nodes with Check nodes to perform checks in DataWorks. | 1320 | FTP_CHECK |
Check node | You can use this type of node to check the availability of objects based on check policies. If the condition that is specified in the check policy for a Check node is met, the task on the Check node is successfully run. If the running of a task depends on an object, you can use a Check node to check the availability of the object and configure the task as the descendant task of the Check node. If the condition that is specified in the check policy for the Check node is met, the task on the Check node is successfully run and then its descendant task is triggered to run. Supported objects: | 241 | - |
Data Quality | Data comparison node | You can use this type of node to compare data between different tables in multiple ways in a workflow. | 1331 | DATA_SYNCHRONIZATION_QUALITY_CHECK |
Parameter value assignment and parameter passing | Assignment node | You can use this type of node if you want to use the outputs parameter of an assignment node to pass the data from the output of the last row of the code for the assignment node to its descendant nodes. | 1100 | CONTROLLER_ASSIGNMENT |
Parameter node | You can use this type of node to aggregate parameters of its ancestor nodes and distribute parameters to its descendant nodes. | 1115 | PARAM_HUB |
Control | For-each node | You can use this type of node to traverse the result set of an assignment node. | 1106 | CONTROLLER_TRAVERSE |
Do-while node | You can use this type of node to execute the logic of specific nodes in loops. You can also use this type of node together with an assignment node to generate the data that is passed to a descendant node of the assignment node in loops. | 1103 | CONTROLLER_CYCLE |
Branch node | You can use this type of node to route results based on logical conditions. You can also use this type of node together with an assignment node. | 1101 | CONTROLLER_BRANCH |
Merge node | You can use this type of node to merge the status of its ancestor nodes and prevent dry run of its descendant nodes. | 1102 | CONTROLLER_JOIN |
Others | Shell node | Shell nodes support the standard Shell syntax. The interactive syntax is not supported. | 6 | SHELL2 |
Function Compute node | You can use this type of node to periodically schedule and process event functions and complete integration and joint scheduling with other types of nodes. | 1330 | FUNCTION_COMPUTE |
Data push node | You can use this type of node to obtain the data query results generated by other nodes and push the obtained data to DingTalk groups, Lark groups, WeCom groups, or Microsoft Teams. This way, members in the groups or teams can receive the latest data at the earliest opportunity. | 1332 | DATA_PUSH |