To meet the needs of cross-time-zone business collaboration and unified data processing, enterprises often need to standardize the scheduling baseline for DataWorks workspaces in different regions to a specific time zone, such as UTC+0 or UTC+8. This topic explains how to change the scheduling time zone and details the impact on scheduled tasks and related configurations. Before making this change, you must fully assess the risks to ensure consistent scheduling logic for your global business and prevent scheduling conflicts or data errors caused by time zone inconsistencies.
Supported regions
By default, the scheduling time zone for a DataWorks workspace is the local time zone of the region where the workspace is located. Some DataWorks regions allow you to change the scheduling time zone. The following table lists the regions that support this change and the available time zones.
|
Region |
UTC+0 support |
UTC+8 support |
|
US (Silicon Valley) |
Supported |
Supported |
|
US (Virginia) |
Supported |
Supported |
|
Germany (Frankfurt) |
Supported |
Supported |
|
Singapore |
Supported |
Supported (same as the local time zone) |
|
China (Hong Kong) |
Supported |
Supported (same as the local time zone) |
|
Japan (Tokyo) |
Supported |
Supported |
For example, for a DataWorks workspace in the US (Silicon Valley) region, you can switch the scheduling time zone from the default local time zone to UTC+0 or UTC+8. After the time zone is successfully changed, you can check the notification bar at the top of Operation Center or navigate to the tab for a node in Data Development to verify the change.
Precautions
Carefully read the following precautions before you change the scheduling time zone to prevent production issues or unexpected behavior.
|
Category |
Description |
|
Affected workspace scope |
The scheduling time zone is a region-level setting. The change takes effect in all workspaces within the region. |
|
Irreversible operation |
This change is irreversible. Proceed with caution. Important
This operation involves migrating existing data, such as nodes and instances, and may affect your workloads. We recommend performing a thorough evaluation before you proceed. |
|
Affected configuration scope |
Changing the scheduling time zone affects DataWorks scheduling configurations and how scheduling parameters are substituted in your code. DataWorks calculates the values for these parameters based on the task's scheduled time and data timestamp, then uses them as inputs in your code.
Important
|
Impacts of time zone change
Changing the scheduling time zone affects DataWorks scheduling configurations, parameter substitution in scheduling scenarios, and the time display in some modules.
-
Changing the scheduling time zone affects only scheduling scenarios. Since most operations in DataStudio are not performed in a scheduling environment, time parameters are still replaced based on the local time zone by default when you run tasks in DataStudio. For example, operations such as running a single node, running with parameters, or performing an ad hoc query are not affected by the scheduling time zone change.
-
Because operations such as running a workflow or performing smoke testing in DataStudio use the scheduling system, time parameters in the node code are affected by the scheduling time zone change.
Impact 1: Node scheduling time
The scheduled time for a node changes based on the new scheduling time zone. In the Schedule settings, assume Instance Generation Method is T+1 (Next Day), Schedule Type is Normal, Recurrence is Daily, and Scheduled Time is 00:01, which corresponds to the cron expression 00 01 00 * * ?. Also assume Rerun Property is Rerun allowed after success or failure and Effective Date is from 1970-01-01 to 9999-01-01.
Impact 2: Node time parameter configuration
Scheduling parameters replace variables in your code based on task-related times, such as the scheduled time and data timestamp. The values of these parameters change according to the new scheduling time zone.
YYYYMMDD=${yyyymmdd} LAST_2D=${yyyymmdd-2}
In the Parameters section, enter the scheduling parameters. Separate multiple parameters with spaces, for example, YYYYMMDD=${yyyymmdd} LAST_2D=${yyyymmdd-2}. These parameters take effect during periodic scheduling. You can use the smoke testing feature in the development environment to verify correct parameter replacement.
Impact 3: Time-related logic in node code
Variables in your code are parsed either by the gateway or by the compute engine. The parsing logic is as follows:
-
If parsed by the gateway, the values change according to the new scheduling time zone. In scheduling scenarios (excluding ad hoc runs in Data Development), if you execute a command to get the time in a DataWorks script task, such as a Shell or pyodps node, by running the
datecommand in a Shell node, the system returns the time based on your scheduling time zone. -
If parsed by the underlying compute engine, the engine's own time zone conversion rules apply. For details, see the documentation for the specific engine.
In the following code example, the time variables in the code are replaced with specific time strings based on the scheduled time and then passed to Hive. The actual time represented depends on the parsing logic of the Hive server.
if [ "${YYYYMMDDHH}" = "${YYYYMMDD}00" ] ;then
echo '######## run hive reload data'
hive --hiveconf hive.merge.tezfiles=false --hiveconf tez.queue.name=${YARN_QUEUE} -d YYYYMMDD=${LASTDAY} -d YYYYMMDDHH=${YYYYMMDDHH} -d LASTDAY=${LAST_2D}
...
Impact 4: Baseline or alert times
Times related to baselines or alerts change according to the new scheduling time zone.
Impact 5: API-related times
Times related to APIs change according to the new scheduling time zone.
Impact 6: Time zones of underlying engines
The time zones of underlying engines, such as Data Integration and MaxCompute, are set by each engine and are independent of the DataWorks scheduling time zone. Scheduling parameter values are passed to the engine as plain strings and processed according to the engine's own rules. For information about how engines handle time zones, see the documentation for the respective engine.
-
Changing the scheduling time zone only affects properties related to task scheduling time and does not involve changes to engine time zones.
-
For information about how this scenario is handled in Data Integration, see Appendix: Time processing in Data Integration.
Request the time zone change
Scenario 1: New tenant, first workspace
When a new user creates their first workspace in a region that supports time zone changes, a dialog box informs you that the scheduling time zone can be changed to a non-local one. To make the change, you must submit a ticket to contact technical support. You can decide whether to request the change based on your business needs and the information in Precautions.
Scenario 2: Existing tenants
If you have existing workspaces in a region that supports time zone changes and need to change the scheduling time zone to a non-local one, you also need to submit a ticket to contact technical support. Since this involves migrating existing data, such as nodes and instances, it may affect your workloads. We recommend performing a thorough evaluation. The process involves the following steps:
-
Your side: Assess the impact on existing data.
-
Platform side: Migrate existing data.
-
Platform side: Set the new time zone.
-
Your side: Restore existing data and verify the new time zone.
We recommend running multiple verification tests for each task type.
Verify the time zone change
After the time zone change is successful, you can go to the node editing page in Data Development (not applicable to nodes in the new workflow editor) to check the Scheduling Settings settings, or go to the Operation Center page to confirm that the time zone setting is in effect.
Method 1: Check Schedule settings
After the time zone setting takes effect, a blue notification message "The scheduling time zone is UTC" appears at the top of the Schedule > Scheduling Time tab.
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.
-
Click to open an existing node in Data Development or create a new node to go to the node editing page.
-
On the node editing page, click the tab to check if the new time zone setting has taken effect.
Method 2: Check in Operation Center
Log on to the DataWorks console. After you switch to the target region, choose in the left-side navigation pane. Select the desired workspace from the drop-down list and click Operation Center. The current time zone configuration is displayed in the notification bar at the top of the Operation Center page.
For example, if the scheduling time zone is set to UTC, the notification bar displays This tenant uses UTC as the scheduling time zone. Operation Center displays time in this time zone by default.
Appendix: Time processing in Data Integration
The time zone of Data Integration is independent of the DataWorks scheduling time zone. DataWorks passes scheduling parameter values to Data Integration as plain strings. For example, for a data filtering condition in a where clause such as gmt_modify >= ${yyyymmdd}, Data Integration sends this SQL filter to the data source as a string literal. The actual filtering result depends on the time zone processing mechanism of the data source itself.
The time zone for a Data Integration synchronization process is the local time zone of the DataWorks workspace region. This time zone does not change with the DataWorks scheduling time zone. Be aware of this constraint as synchronization for some data sources is related to the time zone of the synchronization process.