このトピックでは、Lakehouse Migration のスケジューリング移行ツールの基本的な特徴について説明します。
機能概要
Lakehouse Migration (LHM) を使用すると、オープンソースや他のクラウドスケジューリングエンジンから DataWorks へジョブを迅速に移行できます。
スケジューリング移行プロセスは、移行元ジョブのエクスポート、異種ジョブの変換、DataWorks へのジョブのインポートの 3 つのステップで構成されます。中間結果にアクセスできるため、移行を完全に制御できます。
柔軟な変換構成により、MaxCompute、EMR、Hologres など、DataWorks の複数のコンピュートエンジンがサポートされます。
JDK 17 ランタイム環境とネットワーク接続のみを必要とする軽量なデプロイメントが特徴です。
強化されたデータセキュリティ。移行はローカルで実行され、中間結果はアップロードされません。
アーキテクチャ図:
スケジューリング移行のステップ
LHM スケジューリング移行ツールは、3 ステップのプロセスで、任意のスケジューリングエンジンから DataWorks へジョブを移行および変換します。
移行元からスケジューリングタスクをエクスポートします (ソース検出)。
このツールは、ソースからスケジューリングタスク情報を取得し、スケジューリングワークフロー用の標準 LHM データ構造に解析します。このステップでデータ構造が標準化されます。
移行元のスケジューリングプロパティを DataWorks のプロパティに変換します。
ソースのスケジューリングタスクプロパティは、DataWorks のタスクプロパティに変換されます。これには、タスクタイプ、スケジューリング設定、タスクパラメーター、および一部のタスクタイプのスクリプトが含まれます。この変換は、スケジューリングワークフロー用の標準 LHM データ構造に基づいています。
スケジューリングタスクを DataWorks にインポートします。
このツールは、DataWorks ソフトウェア開発キット (SDK) を呼び出して、DataWorks ワークフロー定義を自動的に構築し、タスクをインポートします。このツールは、タスクを作成するか更新するかを自動的に決定します。これにより、複数回の移行とソースの変更の同期がサポートされます。
スケジューリング移行機能マトリックス
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 |
AzkabanBeta | 3.x | Noop、Shell、Subprocess |
OozieBeta | 5.x | Start、End、Kill、Decision、Fork、Join、MapReduce、Pig、FS、SubWorkflow、Java |
HUEBeta | 最新 | Fork、Join、OK、Error、Sqoop、Hive、Hive2、Shell |
最新とは、2025 年 5 月時点の最新バージョンを指します。
他のクラウドスケジューリングエンジンから DataWorks へのスケジューリング移行
ソースタイプ | ソースバージョン | 変換でサポートされるノードタイプ |
DataArts (DGC) | 最新 | CDMJob、HiveSQL、DWSSQL、DLISQL、RDSSQL、SparkSQL、Shell、DLISpark、MRSSpark、DLFSubJob、RESTAPI、Note、Dummy |
WeData | 最新 | Shell、HiveSql、JDBCSql、Python、SparkPy、SparkSql、Foreach、ForeachStart、ForeachEnd、Offline Sync |
Azure Data Factory (ADF)Beta | 最新 | 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 |
EMR Workflow から DataWorks へのスケジューリング移行
EMR Workflow | 2024.03 (最新) | Shell、SQL、Python、DataX、Sqoop、SeaTunnel、HiveCLI、Spark、ImpalaShell、RemoteShell、MapReduce、Procedure、HTTP、Conditions、Switch、Dependent、SubProcess |
DataWorks 同種移行パス
ソースタイプ | ソースバージョン | 変換でサポートされるノードタイプ |
DataWorks | 新バージョン | 定期的にスケジュールされるワークフローに含まれるすべてのノード |
DataWorks Spec | 新バージョン | 定期的にスケジュールされるワークフローに含まれるすべてのノード |