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

DataWorks:バッチ同期ログの分析

最終更新日:Aug 21, 2026

このトピックでは、バッチ同期ジョブのログを表示する方法について説明します。

ログ詳細ページへのアクセス

ジョブ実行ログは、オペレーションセンターまたは DataStudio から表示できます。

モジュール

説明

オペレーションセンター

定期インスタンス、[テストインスタンス]、または [データバックフィル] ページに移動します。 確認したいインスタンスをフィルタリングし、そのログ詳細ページを開きます。 詳細については、「定期的なインスタンスの表示」、「データのバックフィルとデータバックフィルインスタンスの表示」、および「テストの実行とテストインスタンスの表示」をご参照ください。

DataStudio

[操作履歴] ページでは、過去 3 日間に実行されたジョブの実行ログを表示できます。

バッチ同期ログの読み方

以下にジョブの要約ログのサンプルを示します。 エリア ① またはエリア ⑤ のリンクをクリックして、各ステージの詳細なログを表示することもできます。


errorLimit=[{"record":""}              ]
            locale=[zh_CN                    ]
            speed=[{"throttle":false,"concurrent":2}]
End instance loop.
2022-05-15 00:26:34 : Start Job[749320617], traceId [2837894xxx                              32488744735#70000xxx
]
2022-05-15 00:26:34 : The Job[749xxx517] will run in PhysicsPipeline [basecommon              xxx 5_ecs] with requestIdxxx
2022-05-15 00:26:34 : Detail log url: https://di-cn-shanghai.data.aliyun.xxx                                    ouxxx
2022-05-15 00:26:34 : State: 1(SUBMIT) |  Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:27:04 : State: 2(WAIT) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:27:xxx : State: 2(WAIT) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:27:19 : State: 2(WAIT) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:27:34 : State: 2(WAIT) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:27:50 : State: 2(WAIT) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:28:05 : State: 2(WAIT) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:28:xxx : State: 3(RUN) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:28:xxx : State: 3(RUN) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:28:50 : State: 3(RUN) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:29:05 : State: 3(RUN) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:29:20 : State: 3(RUN) | Total: 0R 0B | Speed: 0R/s 0B/s | Stage: 0.0%
2022-05-15 00:2xxx : State: 0(SUCCESS) | Total: 570386R 148.5MB | Speed: 37671R/s 9.8MB/s | Dirty data: 1R 28B | Stage: 100.0%
2022-05-15 00:29:36 : DI Job[749320617] completed successfully.
2022-05-15 00:29:36 : ---
DI Submit at          : 2022-05-15 00:26:34
DI Start at           : 2022-05-15 00:28:10
DI Finish at          : 2022-05-15 00:29:23
2022-05-15 00:29:36 : Use "cdp job -log 749320617 [-p basecomxxx              xxx6]" for more detail.
2022-05-15 00:2xxx : Detail log url: https://di-cn-shaxxx                                          xxx Group
Exit with SUCCESS.
2022-05-15 00:29:36 [INFO] Sandbox context cleanup temp file success.
2022-05-15 00:29:36 [INFO] Data synchronization ended with return code: [0].
2022-05-15 00:29:36 INFO =========================================================================
2022-05-15 00:29:36 INFO Exit code of the Shell command 0
2022-05-15 00:29:36 INFO --- Invocation of Shell command completed ---
2022-05-15 00:29:36 INFO Shell run successfully!

エリア

パラメーター

説明

インスタンスの送信 (エリア ①)

SUBMIT:スケジューリングシステムが同期ジョブを Data Integration のリソースグループに送信しました。 これは、システムがジョブ定義を処理したことを示します。

スケジューリングシステムは、ジョブを実行用のリソースグループにディスパッチします。 エリア ① には、ジョブが使用している Data Integration リソースグループが表示されます。 ログ出力は、リソースグループのタイプによって異なります。

  • ジョブがデフォルトのリソースグループで実行される場合、ログには次のメッセージが表示されます。

    running in Pipeline[basecommon_ group_xxxxxxxxx]

  • ジョブが Data Integration 専用リソースグループで実行される場合、ログには次のメッセージが表示されます。

    running in Pipeline[basecommon_S_res_group_xxx]

  • ジョブがサーバーレスリソースグループで実行される場合、ログには次のメッセージが表示されます。

    running in Pipeline[basecommon_Serverless_res_group_xxx]

説明

このエリアの [Detail log url] をクリックして、各実行ステージの詳細なログを表示することもできます。

リソースのリクエスト (エリア ②)

WAIT:同期ジョブは、Data Integration の実行リソースが利用可能になるのを待機しています。

ジョブが長期間 WAIT 状態のままである場合、他のジョブがリソースグループのリソースを占有している可能性があります。 この問題は、次の方法で解決できます。

  • 占有しているジョブが完了してリソースを解放するのを待ってから、ジョブを開始します。 リソースを大量に消費するジョブを特定するには、「データ同期が遅い場合のシナリオと解決策」をご参照ください。

  • リソースを占有しているジョブを特定し、その所有者と調整して同時実行数を減らします。

  • 現在の同期ジョブの同時実行数を減らし、ジョブを再送信します。

  • リソースグループをスケールアウトします。 詳細については、「スケールアウトおよびスケールイン操作」をご参照ください。

同期の開始 (エリア ③)

RUN:同期ジョブが進行中です。

バッチ同期ジョブには 4 つの実行ステージがあります。

  1. Pre-SQL の実行

    設定に基づき、システムは pre-SQL ステートメントをデータベースに送信します。 すべてのジョブにこのステージが含まれるわけではありません。

    • たとえば、MySQL writer の場合、データ同期ジョブの前に実行する PreSQL ステートメントを設定している場合、その SQL ステートメントがこのステージで実行されます。

    • たとえば、MySQL reader の場合、データフィルタリングのために querySql ステートメントまたは where 句を設定している場合、それらの SQL ステートメントがこのステージで実行されます。

    • たとえば、MaxCompute にデータを書き込む際に、[書き込み前に既存データを削除] を有効にできます。

    説明

    フィルター条件ではインデックス付きフィールドを使用することを推奨します。これにより、長時間実行される SQL クエリを防ぎ、同期全体の時間が増加したり、データベースのタイムアウトによってジョブが中断されたりするのを回避できます。

  2. タスク分割

    このステージでは、システムはソースデータを複数のサブタスクに分割し、バッチで並行読み取りを行います。 分割ルールは次のとおりです。

    • リレーショナルデータベース:システムは、指定されたシャードキー (splitPk) に基づいてデータを複数のサブタスクに分割します。 これらのサブタスクを、バッチで並行して読み取ります。 シャードキーが設定されていない場合、ジョブは単一のチャネルを使用して同期します。

    • LogHub、DataHub、MongoDB:データをシャードの数で分割します。 ジョブの最大同時実行数は、シャードの数を超えることはできません。

    • 半構造化ストレージ:データをファイル数またはデータ量で分割します。 たとえば、OSS ジョブの場合、最大同時実行数はファイル数を超えることはできません。

  3. データ同期

    このステージでは、システムは設定された同時実行数に従って、分割されたサブタスクをバッチで同期します。 リレーショナルデータベースの場合、シャードキーを使用して複数のデータ取得 SQL ステートメントを生成し、データベースから並行してデータを要求します。 詳細については、「バッチ同期の同時実行数とレート制限の関係」をご参照ください。

    説明
    • 実行中の実際の同時実行数は、設定した値と異なる場合があります。

    • シャードキーの設定が不適切な場合、長時間実行される SQL クエリが発生し、同期全体の時間が増加したり、データベースのタイムアウトによってジョブが中断されたりする可能性があります。

    • データベースの負荷が高い場合も、ジョブの実行が遅くなる可能性があります。

  4. Post-SQL の実行

    設定に基づき、システムは post-SQL ステートメントをデータベースに送信します。 すべてのジョブにこのステージが含まれるわけではありません。

    • たとえば、MySQL writer の場合、データ同期の後に実行する PostSQL ステートメントを設定している場合、その SQL ステートメントがこのステージで実行されます。

    • PostSQL ステートメントの実行時間は、ジョブの総実行時間に含まれます。

実行完了 (エリア ④)

完了ステータスは 2 つあります。

  • FAIL:同期ジョブは失敗しました。

  • SUCCESS:同期ジョブは成功しました。

  • ジョブが失敗した場合、ログに主要なエラーメッセージが表示されます。 エリア ⑤ のリンクをクリックして、各ステージの詳細な実行プロセスを表示できます。

  • ジョブが成功した場合、ログには同期されたレコードの総数や平均同期速度などの要約が表示されます。

説明
  • 同期中にダーティデータが生成された場合、ログには Dirty data: xxR のようなメッセージが表示されます。 ダーティデータは宛先に書き込まれません。

  • 大量のダーティデータは同期速度に影響を与える可能性があります。 同期速度が懸念される場合は、まずダーティデータの問題に対処してください。 ダーティデータの詳細については、「バッチ同期ジョブ設定の機能」をご参照ください。

  • ダーティデータの許容数を設定して、ダーティデータがジョブの実行に影響を与えるかどうかを制御できます。 デフォルトでは、バッチ同期ジョブはダーティデータを許容します。 この設定はジョブ設定で変更できます。 ジョブを設定するには、「コードレス UI でのジョブ設定」または「コードエディターでのジョブ設定」をご参照ください。

詳細ログへのリンク (エリア ⑤)

詳細ログへのリンク。

リンクをクリックして、各実行ステージの詳細なログを表示します。

付録:シャードキーの設定

  • テーブルのプライマリキーを splitPk の値として使用することを推奨します。 プライマリキーは通常、均等に分散しているため、シャードにおけるデータホットスポットを防ぐのに役立ちます。

  • splitPk パラメーターは整数データ型のみをサポートします。 文字列、浮動小数点数、日付はサポートしていません。 サポートされていないデータ型で splitPk を設定した場合、DataWorks はその設定を無視し、単一のチャネルを使用してデータを同期します。

  • splitPk を指定しない場合、つまり splitPk の指定がないか、splitPk の値が空の場合、テーブルデータは単一チャネルで同期されます。