简介: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 |