Data Engineering

Apache Airflow - Temeller

DAG'lar, operator'ler (Bash, Python, SQL), zamanlama, görev bağımlılıkları, Airflow UI, connection'lar, variable'lar, trigger rule'lar

20 mülakat soruları·
Mid-Level
1

Apache Airflow'da DAG nedir?

Cevap

Bir DAG (Directed Acyclic Graph), bağımlılıklar ve ilişkilerle organize edilmiş, eksiksiz bir iş akışını temsil eden görev koleksiyonudur. Asiklik yapı, bağımlılık grafiğinde döngü olamayacağı anlamına gelir, bu da her görevin çalışma başına tam olarak bir kez yürütülmesini garanti eder. DAG, görevlerin ne zaman ve nasıl çalışacağını tanımlar, ancak somut olarak ne yaptıklarını değil.

2

Hangi DAG parametresi, scheduler'ın çalıştırmaları planlamaya başlayacağı tarihi tanımlar?

Cevap

start_date parametresi, Airflow'un DAG çalıştırmalarını planlamaya başlayacağı tarihi tanımlar. Bu tarih, data interval'leri belirlemek için schedule_interval ile birlikte kullanılır. Önemli bir nokta: start_date geçmişte ise, catchup=False yapılandırılmadığı sürece Airflow, kaçırılan çalıştırmaları yakalamak için backfill tetikleyebilir.

3

Airflow DAG'ında bir Python fonksiyonunu yürütmek için hangi operator kullanılmalıdır?

Cevap

PythonOperator, Airflow DAG'ında bir Python callable fonksiyonu yürütmenize olanak tanır. Fonksiyon python_callable parametresi aracılığıyla iletilir ve op_args (liste) veya op_kwargs (sözlük) aracılığıyla argümanlar alabilir. PythonOperator, özel Python kodunu çalıştırmak için büyük esneklik sunduğu için en yaygın kullanılan operatorlerden biridir.

4

task_b'nin task_a'dan sonra çalışması için iki task task_a ve task_b arasında bir bağımlılık nasıl tanımlanır?

5

Hangi cron ifadesi gece yarısı günlük bir yürütmeyi temsil eder?

+17 mülakat soruları

Bir sonraki mülakatın için Data Engineering'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla