Apache Airflow
Platform orkestrasi workflow open-source yang memungkinkan penjadwalan, monitoring, dan manajemen pipeline data kompleks menggunakan kode Python.
Apache Airflow adalah platform orkestrasi workflow yang digunakan untuk mendefinisikan, menjadwalkan, dan memantau alur kerja (pipeline) data secara programatik menggunakan Python.
Konsep Inti Airflow
DAG (Directed Acyclic Graph)
Unit utama dalam Airflow. DAG adalah representasi alur kerja - kumpulan task beserta dependensinya yang membentuk graf berarah tanpa siklus.
Task
Setiap langkah dalam DAG. Sebuah task bisa berupa query SQL, script Python, API call, atau bash command.
Operator
Template task yang sudah siap pakai. Contoh:
- PythonOperator: Jalankan fungsi Python
- BashOperator: Jalankan perintah bash
- PostgresOperator: Jalankan query SQL
- HttpOperator: Panggil REST API
Scheduler
Komponen yang memantau DAG dan menjalankan task sesuai jadwal atau trigger.
Airflow vs Alternatif
| Aspek | Apache Airflow | Prefect | Dagster |
|---|---|---|---|
| Pendekatan | DAG Python | Flow Python | Asset-centric |
| Setup | Kompleks | Lebih mudah | Sedang |
| Observability | Cukup | Bagus | Sangat bagus |
| Learning curve | Tinggi | Sedang | Sedang |
| Managed options | MWAA, Composer, Astronomer | Prefect Cloud | Dagster Cloud |
Komponen Airflow
- Web Server: UI untuk monitor DAG dan task
- Scheduler: Memantau DAG dan trigger task
- Executor: Menjalankan task (Sequential, LocalExecutor, CeleryExecutor, KubernetesExecutor)
- Metadata DB: PostgreSQL/MySQL untuk menyimpan state DAG dan task
Istilah Terkait
dbt
Cloud & Modern Data StackTool transformasi data open-source yang memungkinkan data engineer dan analyst menulis transformasi SQL layaknya software engineer, lengkap dengan testing, dokumentasi, dan version control.
Airbyte
Cloud & Modern Data StackPlatform integrasi data open-source yang memudahkan pengiriman data dari ratusan sumber (database, API, SaaS) ke data warehouse atau data lake secara otomatis dengan pendekatan ELT.
Fivetran
Cloud & Modern Data StackPlatform ELT terkelola (managed) yang secara otomatis menyinkronisasi data dari ratusan sumber seperti database, SaaS, dan API ke data warehouse dengan zero maintenance.
Udah paham Apache Airflow? Lanjut latihan SQL dan Excel yuk!
Latihan interaktif, langsung di browser.