DataWorks を使用すると、Data Studio モジュール内から直接 Data Integration タスクを作成および管理できます。これにより、ETL/ELT パイプライン全体を統一された環境で実行でき、モジュール間の切り替えが不要になります。
概要
DataWorks を使用すると、標準のタスクノードと同様に、Data Studio モジュール内で Data Integration タスクを定義および管理できます。このアプローチにより、データパイプライン全体が単一のビューに統合されるため、機能モジュール間の切り替えは不要です。
単一テーブルバッチ同期タスクは、依存関係を持つワークフローに追加できますが、その他の統合タスクタイプはスタンドアロンノードとして実行されます。
コアメカニズム:
構成の一貫性:Data Studio または Data Integration モジュールのいずれかでタスクを作成した場合でも、構成インターフェイス、パラメーター設定、および基盤となる機能は同一です。
双方向同期:Data Integration モジュールで作成されたタスクは、自動的に Data Studio 内の
data_integration_jobsディレクトリに同期され、表示されます。これらのタスクは、source-type-destination-typeチャンネルごとに分類され、統一的な管理が可能です。
前提条件
データソースの準備
ソースおよびターゲットのデータソースを作成済みである必要があります。データソースの構成方法については、「データソース管理」をご参照ください。
ご利用のデータソースがリアルタイム同期をサポートしていることを確認してください。「対応するデータソースおよび同期ソリューション」をご参照ください。
Hologres や Oracle などの一部のデータソースでは、ログ記録を有効化する必要があります。ログ記録の有効化方法はデータソースによって異なります。詳細については、データソースの構成ドキュメント「データソース一覧」をご参照ください。
リソースグループ: サーバーレスリソースグループを購入および設定済みです。
ネットワーク接続:リソースグループとデータソース間のネットワーク接続が確立済みである必要があります。「ネットワーク接続の構成」をご参照ください。
Data Studio での統合タスクの作成
本セクションでは、MySQL から MaxCompute への単一テーブルバッチ同期を例として、Data Studio で Data Integration タスクを作成する手順について説明します。
ノードの作成
DataWorks コンソールの ワークスペース ページに移動します。上部ナビゲーションバーから目的のリージョンを選択し、該当するワークスペースを見つけ、操作 列の を選択します。
上部の [+] アイコンをクリックするか、ワークフロー上部のツールバーから を選択します。
基本情報の構成
まず、レイテンシー、データ量、および複雑さに関する要件に基づいて、バッチ同期またはリアルタイム同期のいずれを使用するかを決定します。次に、ソースおよびターゲットのデータベースタイプ、ネットワーク環境、およびサポートされている機能に基づき、適切な 同期モード(例:単一テーブルバッチ同期、フルデータベースリアルタイム同期、フル・増分データベース同期)を選択します。
ノードの作成 ダイアログボックスで、以下の設定を構成します:
パス:タスクノードを保存する Data Studio のディレクトリツリー内の場所を選択します。
[データソースの種類]: ソースとなるデータソース(たとえば
MySQL)を選択してください。[送信先の種類]: 送信先のデータソース(例:
MaxCompute (ODPS))を選択します。特定タイプ:同期モードを選択します。
名前:タスクノードの名前(例:
mysql_to_mc_user_table)を入力します。

OK をクリックします。タスクが作成され、視覚的構成ページにリダイレクトされます。
タスクの詳細構成
作成プロセスを除き、タスクの構成は Data Integration モジュールでのプロセスと同一であり、ここでは再度詳しく説明しません。
スケジュールの構成(単一テーブルバッチ同期のみ)
タスクノードのプロパティ(例:スケジュール時刻、スケジューリングポリシー、スケジュール依存関係)を構成して、スケジューリングシステムが定期的に自動実行できるようにします。また、スケジュールパラメーターを設定することで、実行時に動的変数をノードインスタンスに渡すことも可能です。
公開および運用
タスクの構成が完了したら、タスクツールバーの 公開 ボタンをクリックして、統合タスクを本番環境に送信します。その後、タスクは オペレーションセンター の統一スケジューリングおよびモニタリングシステムによって管理されます。
タスクが公開された後は、オペレーションセンターで実行状態、ログ、アラート、依存関係を確認できます。インスタンス管理、失敗したタスクの再実行、パフォーマンスチューニング、ダーティデータの処理などに関する操作については、「タスク O&M およびチューニング」をご参照ください。
タスクタイプの選択
各同期モードのユースケースおよびスケジュール/依存関係との連携動作を理解することは、効率的かつ信頼性の高いワークフローを構築する上で重要です。
単一テーブルバッチ同期
構成の詳細については、「コードレス UI によるタスク構成」および「コードエディタによるタスク構成」をご参照ください。
説明:単一のソーステーブルから単一のターゲットテーブルへ、定義されたスケジュール周期(例:毎日、毎時)に基づいて、データを定期的にバッチで同期します。
適用範囲/利用シーン:
データウェアハウスの ODS 層または DWD 層を構築するために、業務データを毎日(T+1)同期します。
本番データベースからデータレイクまたはデータウェアハウスへ、業務テーブルを定期的にアーカイブします。
異なるデータソース間でレポート用のデータを定期的に移行します。
単一テーブルリアルタイム同期
構成の詳細については、「単一テーブルリアルタイムタスクの構成」をご参照ください。
説明:通常、ログからの変更データキャプチャ(CDC)またはメッセージキューからのデータ消費によって実現されます。
適用範囲/利用シーン:
MaxCompute や Hologres などのデータウェアハウスへ、業務データベースのリアルタイム変更を同期し、リアルタイムデータウェアハウスを構築します。
リアルタイムモニタリングダッシュボードやレコメンデーションシステムのデータソースを提供します。
異なるデータベースインスタンス間で、単一テーブルのリアルタイムデータレプリケーションを実装します。
フルデータベースバッチ同期
構成の詳細については、「フルデータベースバッチ同期タスク」をご参照ください。
説明:ソースデータベース内のすべてまたは複数のテーブルに対して、一度限りまたは定期的なバッチデータ同期を実行します。
適用範囲/利用シーン:
業務データベース全体をクラウドデータウェアハウスへ初期完全移行します。
データベース全体の定期的な完全バックアップまたは増分バックアップを実行します。
新しいデータ分析環境を初期化するために、すべての既存データを一度だけインポートします。
フルデータベースリアルタイム同期
構成の詳細については、「フルデータベースリアルタイム同期タスク」をご参照ください。
説明:ソースデータベース内のすべてまたは指定されたテーブルにおけるスキーマ変更およびデータ変更をリアルタイムでキャプチャし、ターゲットへ同期します。
適用範囲/利用シーン:
オンライントランザクション処理(OLTP)データベース全体をリアルタイムで分析用データベースへレプリケーションし、読み書き分離およびリアルタイム分析を実現します。
データベース向けのリアルタイムディザスタリカバリソリューションを構築します。
データレイクまたはデータプラットフォームと複数の上流業務システム間で、リアルタイムのデータ整合性を維持します。
フル・増分同期(データベース全体)
構成の詳細については、「データベース全体のフルおよび増分同期タスク」をご参照ください。
説明:リアルタイム同期中にキャプチャされる CDC データには、
Insert、Update、Deleteの 3 種類の操作が含まれます。非 Delta MaxCompute テーブルなどの追加専用ストレージシステムでは、物理的なUpdateやDelete操作がネイティブでサポートされていません。このようなシステムに CDC ストリームを直接書き込むと、データ不整合(例:削除操作が反映されない)が発生する可能性があります。このモードでは、ターゲット側に完全スナップショット用のBaseテーブルと増分ログ用のLogテーブルを作成することで、この問題を解決します。適用範囲/利用シーン:
ターゲットテーブルが非 Delta MaxCompute テーブルであり、ソーステーブルに自動インクリメント列がないため、バッチ増分同期が利用できない場合、フル・増分タスク(データベース全体)を使用して、数分以内に増分データを書き込むことができます。最終的なマージ済み状態は T+1 で可視化されます。
機能比較
タスクタイプ | 作成場所 | ワークフローオーケストレーション | スケジュール構成 | Data Studio でのデバッグ | データソースの隔離 |
単一テーブルバッチ同期 | Data Studio のみ | ||||
単一テーブルリアルタイム同期 | Data Studio / Data Integration |
(スタンドアロンノードのみ) | (オペレーションセンターへの公開後に実行可能) | ||
フルデータベースバッチ同期 | Data Studio / Data Integration | (スタンドアロンノードのみ) | (サブタスクに対してスケジュールを設定可能) | (オペレーションセンターへの公開後に実行可能) | |
フルデータベースリアルタイム同期 | Data Studio / Data Integration | (スタンドアロンノードのみ) | (オペレーションセンターへの公開後に実行可能) | ||
フル・増分同期(データベース全体) | Data Studio / Data Integration | (スタンドアロンノードのみ) | (サブタスクに対してスケジュールを設定可能) | (オペレーションセンターへの公開後に実行可能) |
よくある質問
Data Integration に関するよくある質問については、「Data Integration よくある質問」をご参照ください。