@task.bash के साथ BashOperator परिभाषित करना
Bash टास्क आपको कोई भी शेल कमांड या स्क्रिप्ट निर्दिष्ट करने और उसे Airflow वर्कफ़्लो में जोड़ने देता है. यह आपके एनवायरनमेंट में Airflow लागू करने की शुरुआत के लिए बढ़िया हो सकता है.
इसी तरह, आप अपने Data Analytics समूह के सहकर्मियों को डेटा देने से पहले उसे साफ करने के लिए कुछ स्क्रिप्ट्स मैन्युअली चला रहे थे (एक स्क्रिप्ट cleanup.sh का उपयोग करते हुए). जैसे-जैसे ऐसे और टास्क्स असाइन हुए, आपने महसूस किया कि सबकुछ मैन्युअली चलाते रहना मुश्किल हो रहा है, और एरर या रिट्राइज़ संभालना तो और भी चुनौतीपूर्ण है. आप एक साधारण स्क्रिप्ट को Airflow ऑपरेटर के रूप में लागू करना चाहते हैं.
Airflow dag और task ऑब्जेक्ट पहले से इम्पोर्ट किए जा चुके हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Apache Airflow परिचय
अभ्यास निर्देश
- टास्क परिभाषित करने के लिए
@task.bashडेकोरेटर का उपयोग करें. - मेथड का नाम
cleanup_taskरखें. - टास्क
cleanup.shरिटर्न करे.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
@dag(
dag_id='analytics_dag',
start_date=datetime(2026,1,1)
)
def analytics_dag():
# Specify a Bash task
@____
def ____():
return '____'
# Run the task
cleanup_task()
analytics_dag()