DAG परिभाषित करना
पिछले अभ्यासों में, आपने extract, transform और load चरण अलग-अलग पूरे किए थे। अब यह सब एक सुथरे etl() फंक्शन में जोड़ा गया है, जिसे आप कंसोल में देख सकते हैं।
etl() फंक्शन संबंधित डेटाबेस से कच्चा कोर्स और रेटिंग्स डेटा निकालता है, करप्ट डेटा को साफ करता है और missing values भरता है, प्रति कोर्स औसत रेटिंग निकालता है और तय किए गए decision rules के आधार पर सिफारिशें बनाता है, और अंत में इन सिफारिशों को एक डेटाबेस में लोड करता है।
जैसा कि आप वीडियो से याद करेंगे, etl() एक ही आर्ग्युमेंट लेता है: db_engines. दोनों etl और db_engines आपके वर्कस्पेस में उपलब्ध हैं, इसलिए जिस टास्क को आप परिभाषित करेंगे, उसे बस एक को दूसरे के साथ कॉल करना है।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Introduction to Data Engineering
अभ्यास निर्देश
- DAG की परिभाषा पूरी करें, ताकि यह रोज़ाना चले। ध्यान रखें कि cron नोटेशन का उपयोग करें।
- टास्क को पूरा करें ताकि वह
etl()फंक्शन को database engines के साथ कॉल करे।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Define the DAG so it runs on a daily basis
@dag(dag_id="recommendations",
start_date=datetime(2024, 1, 1),
schedule="____")
def recommendations():
# Make sure the task calls etl() with the database engines
@task(task_id="recommendations_task")
def recommendations_task():
____(____)
recommendations_task()
# Run the DAG
recommendations()