DataWorks是基於MaxCompute作為計算和儲存引擎的用於工作流程可視化開發和託管調度營運的海量資料離線加工分析平台,支援按照時間和依賴關係的任務全面託管調度。AnalyticDB for MySQL使用者可以通過DataWorks強大的任務託管調度、任務依賴關係管理、任務營運功能等,調度和管理AnalyticDB for MySQL任務。
目的
任務調度中一個重要的功能是任務之間的依賴,為示範該功能,本教程會在DataWorks中建立兩個AnalyticDB for MySQL任務。表與任務之間的關係如下圖所示。

任務一
從
orders表清洗出已完成的訂單:o_orderstatus = 'F',並將其寫入finished_orders表。任務二
從
finished_orders中查詢總價大於10000的訂單:o_totalprice > 10000,並將其寫入high_value_finished_orders表。
前提條件
根據數倉版快速入門,完成建立執行個體、設定白名單等準備工作。
說明AnalyticDB for MySQL和DataWorks所屬地區相同。
如果您在DataWorks中通過AnalyticDB for MySQL的外網地址串連AnalyticDB for MySQL,需要先申請外網地址,然後將DataWorks白名單添加到AnalyticDB MySQL白名單中。
如果您在DataWorks中通過AnalyticDB for MySQL的VPC地址串連AnalyticDB for MySQL,需要先在DataWorks中添加獨享資源群組模式並且獨享資源群組中的VPC與AnalyticDB for MySQL所屬VPC相同。
本教程將使用
orders表作為測試資料,串連AnalyticDB for MySQL資料庫後,執行以下SQL建立測試資料表。CREATE TABLE orders( o_orderkey bigint NOT NULL COMMENT'', o_custkey int NOT NULL COMMENT'', o_orderstatus varchar NOT NULL COMMENT'', o_totalprice decimal(15,2) NOT NULL COMMENT'', o_orderdate date NOT NULL COMMENT'', o_orderpriority varchar NOT NULL COMMENT'', o_clerkvar char NOT NULL COMMENT'', o_shippriority int NOT NULL COMMENT'', o_comment varchar NOT NULL COMMENT'', dummy varchar )DISTRIBUTED BY HASH(o_orderkey); CREATE TABLE finished_orders ( o_orderkey bigint NOT NULL, o_totalprice decimal(15,2) NOT NULL, primary key (o_orderkey) )DISTRIBUTED BY HASH(o_orderkey); CREATE TABLE high_value_finished_orders ( o_orderkey bigint NOT NULL, o_totalprice decimal(15,2) NOT NULL, PRIMARY KEY (`o_orderkey`) ) DISTRIBUTED BY HASH(o_orderkey);
在DataWorks中建立工作空間。
說明工作空間的模式選擇標準模式。
步驟一:在DataWorks中添加AnalyticDB for MySQL資料來源
具體操作,請參見AnalyticDB for MySQL 3.0資料來源。
DataWorks出於安全考慮,對建立已連線的服務進行了安全控制,您需要將AnalyticDB for MySQL資料庫的串連地址和連接埠加添加到白名單中。

步驟二:在DataWorks中建立AnalyticDB for MySQL節點
具體操作,請參見AnalyticDB for MySQL。
步驟三:配置任務依賴
DataWorks支援按照時間、配置同周期調度依賴的任務觸發機制,支援多個任務按照指定的依賴關係在指定的時間運行。
例如,每天淩晨2點運行finished_orders任務。finished_orders任務成功運行之後再運行high_value_finished_orders任務。
步驟四:任務發布
任務配置好之後,就可以進行任務的發布和營運,詳情請參見發布任務。
任務發布之後,可以查看待發布的任務。
任務發布成功之後,您就可以進入任務營運頁面查看任務並進行營運操作。