SQL Server node
Use the SQL Server node in DataWorks to develop, periodically schedule, and integrate SQL Server tasks with other jobs. This topic describes the development workflow.
Background
SQL Server is a relational database management system (RDBMS) that stores and processes data. It provides reliable, efficient, and secure data management and analysis services. For more information, see SQL Server.
Prerequisites
-
The business process has been created.
Data Studio performs engine-specific development operations based on business flows. Before creating a node, create a business flow first. For more information, see Create a business flow.
-
You have created an SQL Server data source with a JDBC connection string. For more information, see Data source management.
-
(Optional; required for Resource Access Management (RAM) users) The RAM user used for task development has been added to the target workspace and assigned either the Development or Workspace Administrator role (which grants broad permissions—assign with caution). For more information about adding members and granting permissions, see Add members to a workspace.
Limitations
-
Supported regions: China (Hangzhou), China (Shanghai), China (Beijing), China (Zhangjiakou), China (Shenzhen), China (Chengdu), China (Hong Kong), Singapore, Malaysia (Kuala Lumpur), Germany (Frankfurt), US (Silicon Valley), and US (Virginia).
-
Stored procedures are not supported.
Step 1: Create SQL Server node
Log on to the DataWorks console. In the target region, click in the left-side navigation pane. Select a workspace from the drop-down list and click Go to Data Development.
-
Right-click the target workflow and choose .
-
In the Create Node dialog box, enter a Name for the node and click OK.
Step 2: Develop SQL Server task
(Optional) Select SQL Server data source
If your workspace has multiple SQL Server data sources, you must select the required data source on the node editor page. If you have only one SQL Server data source, it is used by default.
SQL Server nodes support only SQL Server data sources created with a JDBC connection string.
Develop SQL code: Simple example
In the node's code editor, write the SQL code for your task. The following example queries basic information about all user tables in an SQL Server database:
SELECT * FROM sys.tables;
Develop SQL code: Use scheduling parameters
DataWorks provides Scheduling Parameter that allow you to dynamically pass values to code in periodic scheduling scenarios. You can define variables in your task code using the ${variable_name} format. Then, in the right-side navigation pane of the node editor, go to Scheduling Properties > Scheduling Parameter to assign a value to the variable. For more information about supported formats and how to configure scheduling parameters, see Supported formats for scheduling parameters and Configure and use scheduling parameters.
Example: Query the names and creation dates of all user-defined tables created within the past year. The scheduling parameter a is set to $[add_months(yyyymmdd,-12)], which represents the date one year ago.
The following code provides an example.
SELECT name, create_date
FROM sys.tables
WHERE type = 'U' AND create_date >= '${a}';
Step 3: Configure task scheduling
To periodically run the node task, click Scheduling on the right side of the node editing page and configure scheduling settings based on your needs. For more information, see Overview of task scheduling properties.
You must configure the node’s Rerun attribute and Parent Nodes before you can submit the node.
Step 4: Test task code
Perform the following test operations as needed to verify that the task behaves as expected.
-
(Optional) Select a resource group and assign custom parameter values.
-
Click the
icon in the toolbar. In the Parameter dialog box, select the schedule resource group for testing. -
If your task code uses scheduling parameter variables, assign values to them here for testing. For more information about parameter assignment logic, see Task debugging process.
-
-
Save and run the task code.
Click the
icon in the toolbar to save your task code. Then click the
icon to run the task. -
(Optional) Perform smoke testing.
To run smoke testing in the development environment and verify that the scheduled node task executes as expected, perform smoke testing either during or after node submission. For more information, see Perform smoke testing.
Step 5: Submit and publish the task
After configuring the node task, submit and publish it. Once published, the node runs periodically based on its scheduling configuration.
-
Click the
icon in the toolbar to save the node. -
Click the
icon in the toolbar to submit the node task.In the Submission dialog box, enter a Change Description. Optionally, choose whether to require code review after submission.
Note-
You must configure the node’s Rerun attribute and Parent Nodes before you can submit the node.
-
Code review helps ensure code quality and prevents errors caused by unreviewed code being published directly to production. If code review is enabled, the submitted node code must be approved by reviewers before it can be published. For more information, see Code review.
-
If you are using a workspace in standard mode, after successfully submitting the task, click Publish in the upper-right corner of the node editing page to deploy the task to the production environment. For more information, see Publish a task.
Next steps
Task operations: After a task is committed and published, it runs periodically based on the node's configuration. You can click O&M in the top-right corner of the node editing page to go to the Operation Center and view the scheduling and running status of the scheduled task. For more information, see Managing Scheduled Tasks.