すべてのプロダクト
Search
ドキュメントセンター

DataWorks:バッチ同期の機能

最終更新日:Aug 18, 2026

バッチ同期は、Reader プラグインと Writer プラグインを使用して、ソースデータベースと宛先データベース間で全量データまたは増分データを転送します。データソースとスケジューリングパラメータを設定することで、プロセスを自動化できます。このトピックでは、バッチ同期の機能について説明します。

コア機能

オフライン同期は、以下の機能を提供します。

image

機能

説明

異種データソース間のデータ同期

Data Integration は、リレーショナルデータベース、非構造化ストレージ、ビッグデータストレージ、メッセージキューなど、50 種類以上のデータソースタイプをサポートしています。ソースと宛先のデータソースを定義し、Data Integration が提供する Reader プラグインと Writer プラグインを使用して、構造化または半構造化ソース間でデータを転送できます。詳細については、「サポートされているデータソースと同期ソリューション」をご参照ください。

複雑なネットワーク環境でのデータ同期

バッチ同期は、ApsaraDB、オンプレミスのデータセンター、ECS 上の自己管理データベース、および Alibaba Cloud 外部のデータベースをサポートしています。設定する前に、リソースグループと、ソースおよび宛先のエンドポイントの両方との間の ネットワーク接続 が確保されていることを確認してください。設定の詳細については、「ネットワーク接続ソリューション」をご参照ください。

同期シナリオ

1. 同期モード:

  • 定期的な全量同期:定期的に宛先テーブルをすべてのソースデータで上書きします。全量更新のシナリオに適しています。

  • 定期的な増分同期:日次または時間単位で新規または変更されたデータのみを同期します。${bizdate} のような組み込みの スケジューリングパラメータ を データフィルター の WHERE 条件と組み合わせて使用し、指定されたデータのみを取得して、対応する時間パーティションに書き込むようにします。詳細については、「増分同期のスケジューリングパラメータの設定」をご参照ください。

  • 履歴データバックフィル:大量の履歴データを一度にバックフィルする必要がある場合は、[データバックフィル] の **[データのバックフィル]** 機能を使用して、同期タスクをバッチ実行し、履歴データを効率的にアーカイブします。

説明

スケジューリングパラメータの詳細については、「Data Integrationのスケジューリングパラメータの代表的なシナリオ」および「スケジューリングパラメータ」をご参照ください。

2. サポートされているソース構造:

  • 単一テーブルから単一テーブルへ:最も基本的な同期モードです。1つのソーステーブルから1つの宛先テーブルにデータを同期します。

  • シャーディングされたテーブルから単一テーブルへ:

    • 複数の物理テーブル (注文テーブル order_01、order_02... など) からデータを自動的に集約し、1 つの宛先テーブルに書き込みます。

    • サポートされているデータソースには、MySQL、SQL Server、Oracle、PostgreSQL、PolarDB、AnalyticDB が含まれます。詳細については、「シャーディングされたテーブルを単一のテーブルに同期する」をご参照ください。

設定方法

Data Integration では、次の方法でバッチ同期タスクを設定できます。

  • コードレス UI:ガイド付きのビジュアルインターフェイスを通じてタスクを段階的に設定します。このモードは習得と使用が簡単ですが、一部の高度な機能はサポートされていません。

  • コードエディター:JSON スクリプトを使用して同期ロジックを直接定義します。このモードは、より複雑な設定をサポートし、きめ細かい制御を可能にします。

  • OpenAPI:OpenAPI を通じてタスクの完全なライフサイクルを管理し、プログラムによる操作をサポートします。

  • DI エージェント:AI を活用した対話を通じて単一テーブルのバッチ同期タスクを迅速に作成および管理するには、手動のフォーム設定の代わりに DI エージェント を使用します。同期の要件を 1 文で記述すると、エージェントが自動的にデータソースを識別し、フィールドをマッピングし、リソースグループを割り当て、スケジューリングポリシーを設定するため、単一タスクの作成時間が 15~30 分から 5 分未満に短縮されます。

説明

タスク設定機能の詳細については、「機能概要」をご参照ください。

バッチ同期タスクの O&M

  • アラート:不完全、失敗、完了したタスクなどのシナリオを含む、バッチ同期タスクの実行ステータスを監視します。メール、SMS、電話、DingTalk グループボット、Webhook などの複数のアラート方法をサポートしており、アラート受信者に通知します。

  • データ品質概要:タスクをコミットしてデプロイした後、オペレーションセンターで宛先テーブルのデータ品質監視ルールを設定できます。現在、データ品質監視ルールをサポートしているのは一部のデータベースタイプのみです。

  • データソース環境の分離:単一のデータソース名は、開発環境と本番環境の 2 つの独立した設定にバインドされます。タスクの実行中、データソースは環境に基づいて自動的に切り替えられます。開発デバッグでは開発環境が、本番スケジューリングでは本番環境が使用されるため、テスト操作が誤って本番データに影響を与えるリスクを防ぎます。

機能概要

image

機能

説明

全量または増分データ同期

バッチ同期タスクは、 データフィルタリング と スケジューリングパラメータ を組み合わせて設定することにより、全量または増分データ同期をサポートします。増分同期の設定はプラグインによって異なります。増分データ同期の詳細については、「増分データ同期の設定」をご参照ください。

フィールドマッピング

フィールドマッピングルールを定義することにより、ソースデータは指定された関係に基づいて対応する宛先フィールドに書き込まれます。両側のフィールドタイプに互換性があることを確認してください。

  • 複数のフィールドマッピング方法が利用可能です。

    • ウィザードモード は、同名マッピング、同行マッピング、およびカスタムフィールド関係をサポートしています。マッピングされていないフィールドのデータは自動的に無視されます。書き込みの失敗を避けるために、対応する宛先フィールドにデフォルト値が設定されているか、null 値が許容されていることを確認してください。

    • スクリプトモード では、列の設定順序に基づいてフィールドが厳密にマッピングされます。Reader 側のフィールド数は、Writer 側のフィールド数と完全に一致する必要があります。一致しない場合、タスクは実行時に失敗します。

  • 同期タスクは、定数、スケジューリングパラメーター、および ${bizdate} などの組み込み変数を含む、宛先フィールドへの動的な値の割り当てもサポートします。関連するパラメーターには、スケジューリングフェーズ中に最終的な値が割り当てられます。

タスクのレート制限

  • [タスクの並行性制御] 機能は、データベースからの読み取り、およびデータベースへの書き込みのための同時実行スレッドの最大数を制限します。

  • [同期速度] 機能は、高い同期速度によってソースまたは宛先に過度の圧力がかかるのを防ぐために、トラフィックを制御します。スロットリングが有効になっていない場合、現在のハードウェア環境で利用可能な最大転送パフォーマンスが提供されます。

分散タスク実行

分散実行をサポートするデータソースでは、タスクシャーディングを使用して同期タスクを複数のノードに分散し、同時実行させることができます。これにより、同期速度をクラスターサイズに比例して線形にスケールさせ、単一ノードのパフォーマンスボトルネックを解消できます。このモードは、高スループット、低レイテンシーの同期シナリオに特に適しており、アイドリング状態のクラスターリソースを効率的に利用して、ハードウェア使用率を大幅に向上させます。

ダーティデータポリシー

ダーティデータ とは、タイプの競合や制約違反などの例外により、宛先への書き込みに失敗したデータレコードを指します。バッチ同期は、許容するダーティデータレコードの数とタスクへの影響を定義するダーティデータポリシーをサポートしています。

  • ダーティデータを無視する:ダーティデータは自動的に除外されます。有効なデータのみが書き込まれ、タスクは実行を継続します。

  • 限定的なダーティデータを許容する:しきい値 N を設定します。ダーティデータレコードの数が N 以下の場合、異常なデータは破棄され、タスクは継続されます。数が N を超えると、タスクは失敗して終了します。

  • ダーティデータを許容しない:ダーティデータが検出されると、タスクは直ちに失敗して終了します。

タイムゾーン

ソースと宛先の間でタイムゾーンをまたいだ同期が必要な場合は、ソースのタイムゾーンを設定してタイムゾーン変換を実行できます。

インテリジェントなデータ処理

DataWorks は、データ同期中にデータ処理機能を統合して、ソースデータを変換および処理してから宛先に書き込むことをサポートしています。

文字列置換:バッチ同期タスクに組み込まれている文字列置換機能を使用すると、データのランディングや追加の ETL ステップを必要とせずに、データ転送中に直接軽量なデータ変換を実行できます。

AI 支援処理:データ同期中に AI 大規模言語モデルを統合して、ソースの自然言語データに対してセマンティック分析、感情分析、その他の処理を実行して、処理結果を宛先テーブルに直接書き込むことをサポートします。

データベクトル化:ソースデータを抽出してベクトル化 (エンベディング) して、ベクターデータベースに書き込むことをサポートします。

次のステップ

タスク作成の詳細な手順については、以下をご参照ください。