चाइल्ड Dag को ट्रिगर करना
आप देखते हैं कि आपके कुछ वर्कफ़्लो समान कॉम्पोनेंट्स का उपयोग कर रहे हैं और समझते हैं कि आप सामान्य टास्क्स को अलग करके अपने अलग Dag में रख सकते हैं. इससे आप बिना कई कॉपी संभाले, ज़रूरत पड़ने पर उन कॉम्पोनेंट्स को चला पाएँगे. आप तय करते हैं कि अपने मौजूदा वर्कफ़्लो के एक टास्क के ज़रिए एक चाइल्ड Dag को चलाएँगे.
dag, task, और datetime कॉम्पोनेंट्स पहले से आपके लिए इम्पोर्ट किए गए हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Apache Airflow परिचय
अभ्यास निर्देश
- वह ऑपरेटर इम्पोर्ट करें जो आपके वर्कफ़्लो के भीतर से किसी Dag को शुरू करता है.
- ऑपरेटर को
child_pipelineनामक Dag ट्रिगर करने के लिए सेट करें. - यह सुनिश्चित करें कि पैरेंट Dag आगे बढ़ने से पहले ट्रिगर किए गए Dag के पूरा होने का इंतज़ार करे.
- यह सेट करें कि ऑपरेटर कितनी बार जाँच करे कि चाइल्ड Dag पूरा हो चुका है.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import TriggerDagRunOperator
from airflow.providers.standard.operators.trigger_dagrun import ____
@dag(start_date=datetime(2026, 1, 1))
def parent_orchestrator_dag():
# Trigger child_pipeline and wait for it to complete
trigger_child = TriggerDagRunOperator(
task_id="trigger_child_pipeline",
trigger_dag_id="____",
____=True,
____=30,
conf={"source": "s3://my-bucket/raw/"})
validate() >> trigger_child >> post_trigger_summary()
parent_orchestrator_dag()