English
Open in Telegram

PostXosh, keling Airflow da DAG larni yaratish turlari haqida va yollari haqida korib chiqamiz.

20 February 2025
S
Storytelling with Data
Xosh, keling Airflow da DAG larni yaratish turlari haqida va yollari haqida korib chiqamiz. Biz bilgan dag =Dag() usuli Agarda buni import qilmasak DAG yaratib olmaymiz. ''' from airflow import DAG ''' import qilganimizdan song ''' dag = DAG(...) ''' shunaqa tartibda yaratib organganmiz. lekin bu usul kop code yozishga sabab boladi va ishlashida ham farqi bor keyinroq koramiz. bu haqida toliq. Aytaylik Task yaratmoqchimiz. Buning uchun Operatorlarni chaqirishimiz kerak boladi. from airflow.operators.python import PythonOperator task_1 = PythonOperator( task_id='task_1', dag=dag, # DAG ga boglashimiz uchun shu parametr kerak har doim. ... ) Lekin har bir yangi taskda dag=dag parametrini har safar 100 ta task yozsak 100 marta yozish kerak boladi. task_2 = PythonOperator( task_id='task_2', dag=dag, # Buni yana yozish kerak ... ) task_3 = PythonOperator( task_id='task_3', dag=dag, # Yana, yana ... ) Biz shuni yozmasdan dag yaratishni organamiz 😁 Context Manager - with operator with DAG(...) as dag: task_1 = PythonOperator(task_id='task_1', ...) task_2 = PythonOperator(task_id='task_2', ...) task_3 = PythonOperator(task_id='task_3', ...) Bu usul ancha qulay va code quyidagicha boladi Bu usulda dag=dag ni qayta-qayta yozish shart emas yana bir usul bor lekin Uchinchi USulda biz DAG dekoretorini korib chiqamiz: from airflow.decorators import dag, task @dag(...) def my_dag(): @task def task_1(): ... @task def task_2(): ... task_1() >> task_2() my_dag() Bu usul with DAG(...) as dag: dan ham yaxshiroq, chunki Airflow keyinchalik dekorator usulini toliq qollab-quvvatlashi kutilmoqda. Bundan tashqari, @task dekoratori ham mavjud bo‘lib, u PythonOperator ni almashtiradi. DAG dekoratori (@dag) tavsiya qila olaman, chunki Airflow shu yonalishda rivojlanmoqda. Bundan tashqari, @task dekoratori orqali vazifalarni ham aniqlashtira oladi, bu esa kodni ancha clean code qiladi. Ammo with DAG(...) usuli ham yaxshi, faqat eski dag=dag usulidan foydalanish tavsiya qilmayman lekin hamma usulni bilib qoygan yaxshi sababi interviewda sorab qolishadi
1 · 693 ·

Nearby in the feed

SStorytelling with DataBu kod hozirgi yuklagan Orders jadvalidagi songi yangilanish sanasini olish uchun kerak. ETL (Extract, Transform, Load) jarayonida u juda muhim , kodning qandaySStorytelling with DataNormalization – bu jadvallarni togri tashkil qilish va ortiqcha malumotlarni bolmasligini taminlash jarayoni. Maqsad – malumotlar bazasining samaradorligini osh
this message
SStorytelling with DataBugun Dag yaratgandagi parametrlar haqida korib chiqamiz va nega kerak degan savollarga javob olamiz! “start_date” parametri bu dag qachondan boshlab ishga tushSStorytelling with Databackfill bu mexanizm malumotlaringizni qayta toldirish uchun Dag ishga tushirilgan sanalarni qayta ishga tushirishimiz kerak bolsa yoki boshlanish sanasidan old
SStorytelling with DataStorytelling with Data@DataStoryLab · channel
51posts in the index
Venue feed Open in Telegram

An open public feed from the search index ChatCrawler — “Google for public Telegram”; refreshed as the venue is crawled. Times are UTC.

Public content only, official Telegram API. About · FAQ · Index limits · Remove a page · Catalog · Search · How we count