功能概览

本文介绍一站式湖仓大数据迁移平台(Lakehouse Migration)调度迁移工具的基础能力

功能概述

一站式湖仓大数据迁移平台(Lakehouse Migration,LHM)提供了将开源调度引擎作业、他云调度引擎作业快速迁移至DataWorks(新版Idea)的能力。

  • 调度迁移由源端作业导出、异构作业转换、DataWorks作业导入三步执行,中间结果透出,迁移全程可控

  • 灵活可配置的转换配置,对DataWorks+MaxCompute/EMR/Hologres多种计算引擎进行适配

  • 迁移工具轻量部署,仅要求JDK17运行环境和网络连通

  • 数据安全保障,迁移全程本地运行,中间结果不上传

架构图:

image

调度迁移步骤

LHM调度迁移工具通过三步实现任意调度引擎到DataWorks的异构转换迁移。

  1. 迁移源端调度任务导出(源端探查)。

实现从源端获取调度任务信息,并将其解析为LHM调度工作流标准数据结构,实现数据结构上的标准化。

  1. 迁移源端-DataWorks调度属性的转换。

将源端调度任务属性转换为DataWorks任务属性,包括任务类型、调度定时器、任务参数、部分类型的任务脚本等。以LHM调度工作流标准数据结构为基,进行属性转换。

  1. DataWorks调度任务导入。

自动构造DataWorks工作流定义、调用DataWorks SDK实现任务导入,工具自动选择创建/更新逻辑,为用户提供多轮迁移、迁移源端变更同步的能力。

调度迁移能力矩阵

当前LHM工具已实现以下调度引擎任务到DataWorks的自动化迁移。

开源引擎至DataWorks调度迁移

源端类型

源端版本

支持转换的节点类型

DolphinScheduler

1.x

Shell、SQL、Python、DataX、Sqoop、Spark(Java, Python, SQL)、MapReduce、Conditions、Dependent、SubProcess

2.x

Shell、SQL、Python、DataX、Sqoop、HiveCLI、Spark(Java, Python, SQL)、MapReduce、Procedure、HTTP、Conditions、Switch、Dependent、SubProcess

3.x

Shell、SQL、Python、DataX、Sqoop、SeaTunnel、HiveCLI、Spark(Java, Python, SQL)、MapReduce、Procedure、HTTP、Conditions、Switch、Dependent、SubProcess(3.3.0-alpha版本更名SubWorkflow)

Airflow

2.x

EmptyOperator、DummyOperator、ExternalTaskSensor、BashOperator、HiveToMySqlTransfer、PrestoToMySqlTransfer、PythonOperator、HiveOperator、SqoopOperator、SparkSqlOperator、SparkSubmitOperator、SQLExecuteQueryOperator、PostgresOperator、MySqlOperator

DataArts(DGC)

Latest

CDMJob、HiveSQL、DWSSQL、DLISQL、RDSSQL、SparkSQL、Shell、DLISpark、MRSSpark、DLFSubJob、RESTAPI、Note、Dummy

WeData

Latest

Shell、HiveSql、JDBCSql、Python、SparkPy、SparkSql、Foreach、ForeachStart、ForeachEnd、离线同步

Azkaban

3.x

Noop、Shell、Subprocess

Oozie

5.x

Start、End、Kill、Decision、Fork、Join、MapReduce、Pig、FS、SubWorkflow、Java

HUE

Latest

Fork、Join、OK、Error、Sqoop、Hive、Hive2、Shell

Azure Data Factory(ADF)

Latest

DatabricksNotebook、ExecutePipeline、Copy、Script、Wait、WebActivity、AppendVariable、Delete、DatabricksSparkJar、DatabricksSparkPython、Fail、Filter、ForEach、GetMetadata、HDInsightHive、HDInsightMapReduce、HDInsightSpark、IfCondition、Lookup、SetVariable、SqlServerStoredProcedure、Switch、Until、Validation、SparkJob

  • Latest202505月时的最新版本。

EMR WorkflowDataWorks调度迁移

EMR Workflow

2024.03 (Latest)

Shell、SQL、Python、DataX、Sqoop、SeaTunnel、HiveCLI、Spark、ImpalaShell、RemoteShell、MapReduce、Procedure、HTTP、Conditions、Switch、Dependent、SubProcess

DataWorks平迁链路

源端类型

源端版本

支持转换的节点类型

DataWorks

新版

被周期工作流包含的所有节点

DataWorks Spec

新版

被周期工作流包含的所有节点