Airflow DAG'leri

Python ile Apache Airflow’a Giriş

Mike Metzger

Data Engineer

DAG nedir?

DAG, veya Directed Acyclic Graph:

  • Directed - bileşenler arasındaki akış bağımlılıkları gösterir
  • Acyclic - döngü veya tekrar yoktur
  • Graph - bileşenlerin bütünü

Düğümleri tek yönlü oklarla bağlı ve döngüsüz yönlendirilmiş asiklik grafik

Python ile Apache Airflow’a Giriş

Airflow'da DAG

  • Python ile yazılır (ancak diğer dillerdeki bileşenleri kullanabilir)
  • Operatörler veya sensörler gibi yürütülecek Görevlerden oluşur
  • Açıkça veya örtük olarak tanımlanmış bağımlılıklar içerir
    • Örn., dosyayı veritabanına aktarmadan önce sunucuya kopyalayın.

  Bağımlılık sırasını gösteren bağlı görevlerden oluşan Airflow DAG'ı

Python ile Apache Airflow’a Giriş

Bir DAG tanımlayın

Örnek DAG (Taskflow API):

from airflow.sdk import dag

from pendulum import datetime @dag( dag_id='etl_workflow', email='[email protected]', start_date=datetime(2026, 3, 15, tz="UTC") )
def etl_workflow(): ...
etl_workflow()
Python ile Apache Airflow’a Giriş

Komut satırında DAG'ler

 

  • airflow komut satırı birçok alt komut içerir
  • airflow -h - yardım ve alt komut açıklamaları

 

  • DAG alt komutları

    • airflow dags list - tanınan tüm DAG'leri gösterir
    • airflow dags reserialize - Airflow'un DAG dosyalarını yeniden yüklemesini zorlar
    • airflow tasks test - belirli bir görevi çalıştırır
Python ile Apache Airflow’a Giriş

Komut satırı vs Python

Komut satırı aracı ile:

  • Airflow süreçlerini başlatın
  • DAG'leri / Görevleri elle çalıştırın
  • Airflow'dan günlük (log) bilgisi alın

airflow komut satırı aracını çalıştıran terminal

Python ile:

  • Bir DAG oluşturun
  • Bir DAG'in tekil özelliklerini düzenleyin

Python kodunu temsil eden görsel

Python ile Apache Airflow’a Giriş

Hadi pratik yapalım!

Python ile Apache Airflow’a Giriş

Preparing Video For Download...