Sobes.tech
Middle

Airflow'da DAG nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Apache Airflow'daki DAG (Yönlendirilmiş Döngüsüz Grafik), görevlerin (tasks) sırasını ve bağımlılıklarını tanımlayan yönlendirilmiş döngüsüz bir grafiktir.

Grafikteki her tepe noktası bir görevi temsil eder ve kenarlar, yürütme sırasını gösterir: B görevi, A görevi başarıyla tamamlandıktan sonra başlayabilir, eğer A'dan B'ye bir kenar varsa.

Airflow'daki DAG'nin temel özellikleri:

  • Yönlendirilmiş — görevler belirli bir yönde ilerler, veri veya süreç akışını yansıtır.
  • Döngüsüz — sonsuz tekrarları önlemek için döngü yoktur.

Python'da Airflow ile basit bir DAG örneği:

from airflow import DAG
from airflow.operators.bash import BashOperator
from datetime import datetime

default_args = {'start_date': datetime(2024, 1, 1)}

dag = DAG('ornek_dag', default_args=default_args, schedule_interval='@daily')

# Görevleri tanımla
start = BashOperator(task_id='start', bash_command='echo Start', dag=dag)
process = BashOperator(task_id='process', bash_command='echo Processing', dag=dag)
end = BashOperator(task_id='end', bash_command='echo End', dag=dag)

# Bağımlılıkları tanımla
start >> process >> end

Bu şekilde, Airflow'daki DAG, karmaşık iş akışlarını tanımlamak ve otomatikleştirmek için kullanılan, açıkça belirlenmiş bir yürütme sırasına sahip bir yöntemdir.