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

DataWorks:インスタンスの即時生成の設定

最終更新日:Mar 04, 2026

デフォルトでは、DataWorks の定期タスクの設定変更は 翌日 モードで有効になります。これにより、デプロイメントの翌日に生成されるインスタンスには、新しい設定が適用されます。新規または変更されたタスクの変更を当日に有効にする必要がある場合は、デプロイメント直後 モードを使用できます。

仕組み

DataWorks では、タスクを変更して変更を Submit すると、新しい設定は 2 つの方法のいずれかでインスタンス生成に影響します。これらのモードによって、変更が当日に有効になるか、次のスケジューリングサイクル (翌日) に有効になるかが決まります。

モード A: 翌日 (システムのデフォルト)

これはシステムのデフォルトであり、推奨されるオプションです。当日に実行中のインスタンスから変更を分離し、本番環境の安定性を確保します。

  • 仕組み
    当日 (T日) のデプロイメントはタスク定義を更新するだけで、その日のインスタンス実行には影響しません。

  • 当日 (T日) への影響:

    • 動作: タスクのコードとプロパティのみが更新されます。これは、当日にすでに生成またはスケジューリングされているインスタンスには影響しません。T日のすべてのインスタンスは、デプロイメント前の設定に基づいて実行され続けます。

    • 推奨事項: 新しいロジックを T日に有効にする必要がある場合は、デプロイメント後に T日のインスタンスに対してデータ補完操作を実行することを推奨します。

  • 翌日 (T+1日) への影響:
    すべての変更は、T+1日の最初の定期インスタンスから有効になります。すべてのインスタンスは、新しい設定を使用して生成および実行されます。

モード B: デプロイメント直後

このモードは、デプロイメント当日にタスクの変更をできるだけ早く適用します。このモードの主なロジックは、デプロイメント時刻を基準に、当日 (T日) の定期インスタンスの処理方法を決定する点にあります。

  • 仕組み
    システムは、T日の各定期インスタンスのスケジューリング時刻と「デプロイメント時刻 + 10 分のシステムバッファ」を比較します。

  • スケジューリング時刻 < デプロイメント時刻 + 10 分

    • 結果: 新規タスクはドライランを実行します。変更されたタスクの場合、新しいインスタンスは生成されません。

    • 動作: 新しくデプロイされたタスクの場合、インスタンスは「期限切れ」と見なされ、ドライラン状態になります。この状態では、ビジネスロジックは実行されません。これにより、デプロイメント前の設定に属するインスタンスで新しいコードが実行されるのを防ぎます。変更されて再デプロイされたタスクの場合、期限切れインスタンスは生成されません。

  • スケジューリング時刻 > デプロイメント時刻 + 10 分

    • 結果: 通常実行。

    • 動作: システムは新しい設定に基づいてインスタンスを即座に生成し、実行します。

  • 翌日 (T+1日) への影響:
    T+1日のすべての定期インスタンスは、新しい設定に基づいて生成されます。

重要

日をまたぐスケジューリングの決定性を確保するため、システムには特別な「日次締め切り期間」(例:23:30 から 24:00) があります。この期間中に提出されたデプロイメントの場合、選択したモードに関係なく、変更は翌々日 (T+2日) に有効になります。

image

制限事項

  • 変更の有効期間: 毎日 23:30 から 24:00 までの期間は、システムのバッチインスタンス生成ウィンドウです。この時間帯に提出されたデプロイメント操作の場合、変更は翌々日 (T+2日) に生成される定期インスタンスで有効になります。

  • データソース変更の制限: タスクに関連付けられたデータソースのみを変更した場合、デプロイメント直後 を選択しても、当日にすでに生成されている定期インスタンスは更新されません。それらは以前のデータソースを使用して実行され続けます。変更をすぐに適用するには、データ補完 機能を使用する必要があります。

「デプロイメント直後」モードの利用シーン

デプロイメント直後 モードはリスクが高くなります。不適切に使用すると、依存関係が複雑になったり、インスタンスが誤って削除または置換されたりして、その日のタスクの安定性が損なわれる可能性があります。

推奨される利用シーン

このモードは注意して使用し、次のシナリオでのみ使用してください:

  • 当日に実行する必要がある新規タスク: 複雑な上流または下流の依存関係がなく、デプロイメント直後に実行する必要がある新規タスク。

  • 既存インスタンスの置換: 当日用に生成されたがまだ実行されていない定期インスタンスを、新しい設定で置換する場合。

高リスクのシナリオ (非推奨)

次のシナリオではこのモードを使用しないでください。毎日の依存関係が複雑になり、スケジューリングの異常につながる可能性があります:

  • デプロイ済みのタスクのスケジューリング設定の変更: これは、複雑な上流および下流の依存関係を持つタスクにとって特に危険です。繰り返し頻度 (例えば、日次から時間単位) を変更してすぐにデプロイすると、一部の古いインスタンスが保持されたまま新しいインスタンスが作成され、依存関係の競合が発生する可能性があります。

  • 上流タスクと下流タスクで生成モードが不一致: 例えば、上流タスクが 翌日 モードを使用し、下流タスクが デプロイメント直後 モードを使用する場合などです。これにより、下流タスクの当日のインスタンスがその上流の依存関係を見つけられなくなり、自動的に実行できない 孤立タスク になります。

代替ソリューション

変更が必要なデプロイ済みタスクの場合、より安全なアプローチは次のとおりです:

  1. デフォルトの 翌日 モードを使用してタスクをデプロイします。

  2. デプロイメントが成功した後、タスクに対して データ補完 操作を実行し、当日に実行する必要があるインスタンスを手動でトリガーします。

実践的なシナリオ

シナリオ 1: 新規タスクのデプロイ

新規タスクがデプロイされると、そのインスタンスの実行は、スケジューリング時刻とデプロイメント時刻の関係 (10 分の遅延を考慮) に依存します。

スケジューリング時刻

ステータスと動作

(デプロイメント時刻 + 10 分) より後

システムは通常の定期インスタンスを生成し、スケジューリングされた時刻に実行されます。

(デプロイメント時刻 + 10 分) 以前

システムはリアルタイムで生成された期限切れインスタンスを生成します。このインスタンスはドライランを実行し、実行されません。

当日のデータを処理するには、前営業日のデータ補完操作を実行します。この操作でも、インスタンスを生成する際に 10 分の時間差があります。詳細については、「仕組み」をご参照ください。

image

例: あるタスクが本番環境に 12:00 にデプロイされたとします。リアルタイムのインスタンス生成の有効時刻は 12:10 です。

  • タスクのスケジューリング時刻が 12:10 より後の場合、タスクはスケジューリングされて実行されます。

  • タスクのスケジューリング時刻が 12:10 より前の場合、タスクはドライランを実行し、そのインスタンスのステータスはリアルタイムで生成された期限切れインスタンスになります。

シナリオ 2: 繰り返し頻度の更新

本番タスクのスケジューリング時刻 (つまり、繰り返し頻度と時刻) を更新し、その変更を本番環境にデプロイすると、変更前後のインスタンスが同じ日に共存する可能性があります。これにより、その日の依存関係が複雑になることがあります。

説明

このシナリオはデプロイメント当日にのみ発生します。翌日には、システムは新しい設定に基づいて定期インスタンスを正常に生成します。

已发布的任务更新调度频率動作は次のとおりです:

  • タスクのスケジューリング時刻が未来の場合

    DataWorks は、すでに生成されている未来のインスタンスを、最新のスケジューリング設定に基づいた新しいインスタンスに置き換えます。

  • タスクのスケジューリング時刻が過去の場合

    DataWorks は、新しい時刻より前にスケジューリングされたインスタンスを保持し、それ以降にスケジューリングされたインスタンスを置換または削除します。

シナリオ 3: 生成モードの不一致

上流タスクと下流タスクの両方が新規で、それらの生成モードが一致しない場合 (例えば、上流タスクが [翌日] を使用し、下流タスクが [デプロイメント直後] を使用する場合)、孤立タスクのシナリオ につながります。孤立タスクは自動的に実行されるようにスケジューリングされません。この孤立タスクに多くの下流依存関係がある場合、後続のすべてのタスクが正常に実行されなくなり、下流のビジネスに深刻な影響を与える可能性があります。实例生成方式不一致

シナリオ 4: 上流のスケジューリング時刻の変更

異なる繰り返し頻度を持つ相互依存の上流タスクと下流タスクのスケジューリング時刻を変更すると、下流の依存関係は上流タスクの最新のスケジューリング設定 (日次、月次、または時間単位の依存関係) に従って設定されます。

説明

スケジューリング時刻が変更された本番タスクの場合、その下流インスタンスは、最新のスケジューリング設定に従って、新しい上流インスタンスと置換されていない古い上流インスタンスの両方に依存します。さまざまな時間単位および分単位の依存関係シナリオの詳細については、「必読: 複雑な依存関係シナリオにおけるスケジューリング設定の原則と例」をご参照ください。このシナリオは、デプロイするタスクのバージョンが [デプロイメント直後] に設定され、そのスケジューリング時刻が変更された場合にのみ発生します。

シナリオ例は次のとおりです:

  • シナリオ 1: 上流タスクのスケジュールが 6 時間ごとから 8 時間ごと (00:00, 08:00, 16:00) に変更され、「デプロイメント直後」モードが選択された場合。场景一

  • シナリオ 2: 上流タスクのスケジュールが 6 時間ごとから 1 日 1 回 16:00 に変更され、「デプロイメント直後」モードが選択された場合。场景二