ノードの自動解析機能を有効にした場合、本番環境で生成されるデータが正しく、ノード変更操作を制御できるようにするには、ノードをデプロイするときに変更操作を確認する必要があります。ノードをコミットすると、システムはノードのコード内のテーブル系列に基づいてノードの入力と出力を解析します。コード解析結果に基づいて、ノードのスケジューリング依存関係が正しいかどうかを確認できます。
概要
ノードをコミットし、自動解析結果に基づいて変更されたノードのスケジューリング依存関係が本番環境のスケジューリング依存関係と異なる場合は、スケジューリング依存関係の変更を示すメッセージが表示されます。変更は、自動解析結果に基づいて [プロパティ] タブの [依存関係] セクションでスケジューリング依存関係を変更した後に、いくつかの入力または出力が追加または削除されたことを示します。
現在のスケジューリング依存関係を使用するかどうか、および現在のスケジューリング依存関係に基づいてスケジュールされている現在のノードをコミットするかどうかを決定できます。ノードをコミットすると、最新の入力と出力が 依存関係[プロパティ] タブの セクションの [親ノード] と [出力] に自動的に追加されます。
説明 自動解析機能を有効にしない場合は、ビジネス要件に基づいてノードのスケジューリング依存関係を設定し、ノードのバージョンを比較することでスケジューリング依存関係が変更されているかどうかを確認できます。
制限
ノードに設定したサイクル間スケジューリング依存関係のコード解析結果を比較することはできません。サイクル間スケジューリング依存関係が存在する場合は、ノードをコミットする前に、スケジューリング依存関係が期待どおりであるかどうかを確認してください。最新のスケジューリング依存関係を使用するかどうかを決定する
ノードをコミットし、システムが現在のノードのスケジューリング依存関係が本番環境のスケジューリング依存関係と異なることを検出した場合は、現在のノードのスケジューリング依存関係がビジネス要件を満たしているかどうかを確認してください。これにより、スケジューリング依存関係の不適切な変更がデータ生成に及ぼす影響を防ぐことができます。
次の例では、スケジューリング依存関係の変更操作が本番環境のスケジューリングノードに及ぼす影響について説明します。影響に基づいて、最新のスケジューリング依存関係を使用するかどうかを決定できます。重要 現在のノードに多数の子孫ノードがある場合、不適切なスケジューリング依存関係は子孫ノードとデータ生成に大きな影響を与える可能性があります。必要な場合を除き、スケジューリング依存関係を変更しないことをお勧めします。
例 1:現在のノードが依存する祖先ノードが変更された場合の影響
ノードをコミットするときに、システムが現在のノードのスケジューリング依存関係に本番環境のスケジューリング依存関係に含まれている入力 A が含まれていないことを検出した場合は、現在のスケジューリング依存関係が正しいかどうかを確認する必要があります。A は、現在のノードの祖先ノードの出力名です。現在のノードのコードの SELECT ステートメントでテーブル A が指定されているにもかかわらず、テーブル A のデータを生成するノードが現在のノードの祖先ノードとして設定されていない場合、現在のノードはテーブル A のデータが生成される前に実行を開始する可能性があります。この場合、現在のノードは実行またはデータの生成に失敗します。
例 2:現在のノードによって生成されるテーブルが変更された場合の影響
ノードをコミットするときに、システムが現在のノードのスケジューリング依存関係に本番環境のスケジューリング依存関係に含まれている出力 B が含まれていないことを検出した場合は、ノードによって生成されるテーブルが変更されているかどうかを確認する必要があります。出力 B に子孫ノードがある場合は、現在のノードによって生成されるテーブルを変更した場合に、子孫ノードに予期しない影響が及ぼされるかどうかを確認します。ノードにrpt_user_info_d 子孫ノードがあり、ノードの出力を削除すると、子孫ノードが孤立して予期したとおりにスケジュールできなくなるか、子孫ノードが現在のノードからデータを取得するときにエラーが発生する可能性があります。詳細については、「ノードの出力を削除または変更した場合の影響」をご参照ください。重要 現在のノードの出力が削除されている最新のスケジューリング依存関係を使用する場合は、現在のノードの子孫ノードへの影響を確認し、慎重に処理する必要があります。