このトピックでは、データバックフィルに関するよくある質問への回答を提供します。
自動トリガーノードのデータバックフィルインスタンスが、「データタイムスタンプ」パラメーターに前日または当日を指定した後、「保留中(スケジュール)」状態になるのはなぜですか?
ノードの 00:00 から 01:00 までの時間範囲のデータをバックフィルすると、ノードに対して複数のデータバックフィルインスタンスが生成されるのはなぜですか?
データバックフィルが必要なノードのスケジュール時間が指定されたデータタイムスタンプ範囲内にないことを示すエラーメッセージが表示されます。なぜですか?
データバックフィル機能の用途は何ですか?
データバックフィル機能を使用すると、自動トリガーノードの過去の期間または将来の期間のデータをバックフィルできます。ノードに構成したスケジューリングパラメーターは、ノードのデータをバックフィルするために指定したデータタイムスタンプに基づいて、特定の値に自動的に置き換えられます。次の図は、MySQLデータソースからMaxComputeの指定された時間ベースのパーティションに増分データを書き込む方法を示しています。
時間ごとまたは分ごとに実行するようにスケジュールされているノードのデータバックフィルインスタンスは、データバックフィルインスタンスの並列処理機能を有効にした後、並列に実行されません。どうすればよいですか?
問題の説明
時間ごとまたは分ごとに実行するようにスケジュールされているノードのデータバックフィルインスタンスは、データバックフィルインスタンスの並列処理機能を有効にした後、並列に実行されません。
原因
並列処理機能を使用すると、日次スケジュールノードの複数のデータバックフィルインスタンスを並列実行して、データタイムスタンプに基づいて数日間のノードのデータをバックフィルできます。時間ごとまたは分ごとに実行するようにスケジュールされているノードのデータをバックフィルする場合、当日生成されるすべてのデータバックフィルインスタンスを並列実行できるかどうかは、並列処理機能では制御されず、ノードの自己依存関係を構成するかどうかによって異なります。自己依存関係の詳細については、「シナリオ 2: 前回のサイクルインスタンスに依存するノードのスケジューリング依存関係を構成する」をご参照ください。
解決策
並列処理機能を有効にしない場合、データバックフィルインスタンスは 1 つだけ生成されます。データバックフィルインスタンスは、データタイムスタンプに基づいて複数回順番に実行されます。
並列処理機能を有効にする場合は、最大 10 個のデータバックフィルインスタンスを指定して、ノードのデータを同時にバックフィルできます。データバックフィルインスタンスは、データタイムスタンプに基づいて並列に実行されます。
シナリオ:時間ごとまたは分ごとに実行するようにスケジュールされているノードの 1 週間分のデータをバックフィルする場合。
ノードの自己依存関係を構成する場合、1 つのデータバックフィルインスタンスがデータタイムスタンプに基づいて毎日複数回順番に実行されます。
ノードの自己依存関係を構成しない場合、複数のデータバックフィルインスタンスがデータタイムスタンプに基づいて毎日並列に実行されます。
データバックフィルのデータタイムスタンプを指定した後、ノードのデータバックフィルインスタンスが実行されません。データバックフィルインスタンスは「保留中(スケジュール)」状態であり、ノードのDAGで黄色で強調表示されています。なぜこのようなことが起こるのですか?
問題の説明
データバックフィルのデータタイムスタンプを指定した後、ノードのデータバックフィルインスタンスが実行されません。データバックフィルインスタンスは「保留中(スケジュール)」状態であり、ノードの有向非巡回グラフ(DAG)で黄色で強調表示されています。
原因
ノードのデータをバックフィルする場合、「データタイムスタンプ」パラメーターを現在の時刻より後の時間範囲に設定すると、ノードのデータバックフィルインスタンスは「保留中(スケジュール)」状態になります。
解決策
[現在の時刻より後にスケジュールされている遡及インスタンスを実行する] チェックボックスをオンにします。
説明「データタイムスタンプ」パラメーターを将来の時間範囲に設定し、「現在の時刻より後にスケジュールされている遡及インスタンスを実行する」チェックボックスをオンにしなかった場合、データバックフィルインスタンスは「保留中(スケジュール)」状態になり、データをバックフィルするノードのDAGで黄色で強調表示されます。
「データタイムスタンプ」パラメーターを将来の時間範囲に設定し、「現在の時刻より後にスケジュールされている遡及インスタンスを実行する」チェックボックスをオンにした場合、DataWorksはデータタイムスタンプが経過した直後にデータバックフィルインスタンスを実行します。
自動トリガーノードのデータバックフィルインスタンスが、「データタイムスタンプ」パラメーターに前日または当日を指定した後、「保留中(スケジュール)」状態になるのはなぜですか?
問題の説明
自動トリガーノードのデータバックフィルインスタンスが、「データタイムスタンプ」パラメーターに前日または当日を指定した後、「保留中(スケジュール)」状態になります。
原因
DataWorksは、データタイムスタンプが前日のデータに基づいて、当日自動トリガーノードを実行します。自動トリガーノードの特定のデータタイムスタンプのデータをバックフィルするプロセスは、データタイムスタンプに基づいてノードに生成されたインスタンスを再実行するプロセスと同じです。
当日実行するようにスケジュールされている自動トリガーノードインスタンスを検索するには、オペレーションセンターの[サイクルインスタンス] ページで[データタイムスタンプ] パラメーターをT1に設定します。インスタンスのデータタイムスタンプは前日であり、インスタンスの実行がスケジュールされている時刻は当日です。

ノードの 00:00 から 01:00 までの時間範囲のデータをバックフィルすると、ノードに対して複数のデータバックフィルインスタンスが生成されるのはなぜですか?
問題の説明
ノードの 00:00 から 01:00 までの時間範囲のデータをバックフィルすると、ノードに対して複数のデータバックフィルインスタンスが生成されます。
原因
ノードに生成されるデータバックフィルインスタンスの数は、ノードに指定したスケジュール時間によって異なります。
例 1: 00:00 から 23:59 まで 1 時間ごとにスケジュールされるようにノードを構成します。ノードの 00:00 から 01:00 までの時間範囲のデータをバックフィルすると、2 つのデータバックフィルインスタンスが生成され、それぞれ 00:00 と 01:00 に実行するようにスケジュールされます。
例 2: 00:00 から 23:59 まで 30 分ごとにスケジュールされるようにノードを構成します。ノードの 00:00 から 01:00 までの時間範囲のデータをバックフィルすると、3 つのデータバックフィルインスタンスが生成され、それぞれ 00:00、00:30、01:00 に実行するようにスケジュールされます。
ノードに対して多数のデータバックフィルインスタンスが生成された場合、一部のデータバックフィルインスタンスは「保留中(リソース)」状態になり、ノードのDAGで黄色で強調表示されます。なぜこのようなことが起こるのですか?
問題の説明
ノードに対して多数のデータバックフィルインスタンスが生成された場合、一部のデータバックフィルインスタンスは「保留中(リソース)」状態になり、ノードのDAGで黄色で強調表示されます。
原因
リソースグループでサポートされる並列スレッド数は限られています。ノードの並列インスタンス数がサポートされる並列スレッド数を超えると、超過したインスタンスは「保留中(リソース)」状態になります。
説明この問題のトラブルシューティング方法については、「リソースを待機しているノード」をご参照ください。
データバックフィルが必要なノードのスケジュール時間が指定されたデータタイムスタンプ範囲内にないことを示すエラーメッセージが表示されます。なぜですか?
問題の説明
データバックフィルが必要なノードのスケジュール時間が指定されたデータタイムスタンプ範囲内にないことを示すエラーメッセージが返されます。
原因
時間ごとまたは分ごとに実行するようにスケジュールされているノードに、スケジュールの時間範囲が指定されていません。その結果、ノードのデータバックフィルインスタンスが生成されません。
ノードのデータバックフィル機能を有効にしましたが、データバックフィルインスタンスが生成されません。なぜですか?
問題の説明
ノードのデータバックフィル機能を有効にしましたが、データバックフィルインスタンスが生成されません。
原因
データバックフィルインスタンスは、スケジュール時間が指定された有効期間内にあるノードに対してのみ生成できます。ノードのスケジュール時間が要件を満たしていることを確認してください。

週ごとまたは月ごとに実行するようにスケジュールされているノードのデータをバックフィルするにはどうすればよいですか?
説明:週ごとまたは月ごとに実行するようにスケジュールされているノードのデータをバックフィルする場合は、スケジュール時間の前の日をデータタイムスタンプとして選択します。毎週特定の日に、または毎月特定の日に実行するようにスケジュールされているノードの場合、スケジューリングシステムは毎週または毎月その日にのみノードを実行します。他の日には、ドライランインスタンスが生成されますが、スケジューリングシステムは実際にはノードを実行しません。詳細については、「シナリオ 1: インスタンスが毎週または毎月の特定の日に実行されるようにスケジュールされている」をご参照ください。
説明データバックフィルに選択された時間はデータタイムスタンプです。データタイムスタンプは、次の式を使用して計算されます。
データタイムスタンプ = バックフィルするノードのスケジュール時間 - 1スケジューリングパラメーターとノードのデータタイムスタンプ、スケジュール時間、および実際の実行時間との関係については、「付録:スケジューリングパラメーターとノードのデータタイムスタンプ、スケジュール時間、および実際の実行時間との関係」をご参照ください。
サンプルシナリオ:月ごとにスケジュールされているノードのデータをバックフィルする
月ごとにスケジュールされているノードのデータをバックフィルする場合、ノードが毎月の最初の日の 00:00 に実行するようにスケジュールされている場合は、データバックフィルのデータタイムスタンプを前月の最終日に設定します。
