Airflowがアドホック実行のDAGでタスクのスキップをサポートしているかどうかを理解しようとしていますか?
DAGグラフが次のようになっているとしましょう:task1> task2> task3> task4
そして、DAGをtask3から手動で開始したいのですが、それを行う最良の方法は何ですか?
私はShortCircuitOperator
について読みましたが、実行がトリガーされたときに適用できるアドホックソリューションを探しています。
ありがとう!
Apache Airflowの構築方法から、実行するタスクを決定するロジック/ブランチを記述できます。
[〜#〜]しかし[〜#〜]
間にあるタスクからタスク実行を開始することはできません。順序は依存関係管理(上流/下流)によって完全に定義されます。
ただし、セロリオペレーターを使用している場合は、実行中のすべての依存関係を無視して、必要に応じてタスクを実行するようairflowに要求できます。繰り返しになりますが、これは上流のタスクがスケジュールされることを妨げません。
マーヤン、非常に汚いが非常にシンプルで最も明白な解決策があります。実質的に30秒。ただし、PRODでコードを簡単に更新でき、他のユーザーがDAGを実行するのを一時的に防ぐことができる場合にのみ可能です。スキップしたいタスクにコメントするだけ
'#task1> task2>
task3> task4
より深刻な解決策ですが、より多くの努力で、おそらくstart_from_taskのパラメーターに基づいてDAGを動的に作成し、この場合、依存関係はこのパラメーターを使用して構築されます。パラメータは、UIでAdmin ==> Variablesメニューを使用して変更できます。前の変数のエクスポート時間の別の変数を使用することもできます。例えば-DAGはタスク1とタスク2を14:05:30まで無視し、その後はDAG全体を実行します。