簡介:DataWorks提供任務搬站功能,支持將開源調度引擎Oozie、Azkaban、Airflow的任務快速遷移至DataWorks。本文主要介紹如何將開源Airflow工做流調度引擎中的做業遷移至DataWorks上
DataWorks提供任務搬站功能,支持將開源調度引擎Oozie、Azkaban、Airflow的任務快速遷移至DataWorks。本文主要介紹如何將開源Airflow工做流調度引擎中的做業遷移至DataWorks上。html
Airflow支持遷移的版本:python >= 3.6.x airfow >=1.10.xpython
遷移助手支持開源工做流調度引擎到DataWorks體系的大數據開發任務遷移的基本流程以下圖示。shell
針對不一樣的開源調度引擎,DataWorks遷移助手會出一個相關的任務導出方案。json
總體遷移流程爲:經過遷移助手調度引擎做業導出能力,將開源調度引擎中的做業導出;再將做業導出包上傳至遷移助手中,經過任務類型映射,將映射後的做業導入至DataWorks中。做業導入時可設置將任務轉換爲MaxCompute類型做業、EMR類型做業、CDH類型做業等。工具
導出原理介紹:在用戶的Airflow的執行環境裏面,利用Airflow的Python庫加載用戶在Ariflow上調度的dag folder(用戶本身的dag python文件所在目錄)。導出工具在內存中經過Airflow的Python庫去讀取dag的內部任務信息及其依賴關係,將生成的dag信息經過寫入json文件導出。oop
具體的執行命令可進入遷移助手->任務上雲->調度引擎做業導出->Airflow頁面中查看。大數據
拿到了開源調度引擎的導出任務包後,用戶能夠拿這個zip包到遷移助手的遷移助手->任務上雲->調度引擎做業導入頁面上傳導入包進行包分析。阿里雲
導入包分析成功後點擊確認,進入導入任務設置頁面,頁面中會展現分析出來的調度任務信息。spa
用戶能夠點擊高級設置,設置Airflow任務與DataWorks任務的轉換關係。不一樣的開源調度引擎,在高級設置裏面的設置界面基本一致以下。命令行
高級設置項介紹:
注意:這些導入映射的轉換值是動態變化的,和當前項目空間綁定的計算引擎有關,轉換關係以下。
設置項 | 可選值 |
sparkt-submit轉換爲 | ODPS_SPARK |
<span>命令行 SQL任務轉換爲</span> | ODPS_SQL、ODPS_SPARK_SQL |
<span>目標計算引擎類型</span> | ODPS |
<span>Shell類型轉換爲</span> | DIDE_SHELL |
<span>未知任務轉換爲</span> | DIDE_SHELL、VIRTUAL |
<span>SQL節點轉換爲</span> | ODPS_SQL、ODPS_SPARK_SQL |
設置項 | 可選值 |
sparkt-submit轉換爲 | EMR_SPARK |
命令行 SQL任務轉換爲 | EMR_HIVE, EMR_IMPALA, EMR_PRESTO, EMR_SPARK_SQL |
目標計算引擎類型 | EMR |
Shell類型轉換爲 | DIDE_SHELL, EMR_SHELL |
未知任務轉換爲 | DIDE_SHELL、VIRTUAL |
SQL節點轉換爲 | EMR_HIVE, EMR_IMPALA, EMR_PRESTO, EMR_SPARK_SQL |
設置項 | 可選值 |
sparkt-submit轉換爲 | CDH_SPARK |
命令行 SQL任務轉換爲 | CDH_HIVE, CDH_IMPALA, CDH_PRESTO, CDH_SPARK_SQL |
目標計算引擎類型 | CDH |
Shell類型轉換爲 | DIDE_SHELL |
未知任務轉換爲 | DIDE_SHELL、VIRTUAL |
SQL節點轉換爲 | CDH_HIVE, CDH_IMPALA, CDH_PRESTO, CDH_SPARK_SQL |