Airflow๋?




Airflow๋
๐ ๋ฐ์ดํฐ ์์
์ “์ธ์ ·์ด๋ค ์์๋ก·์ด๋ป๊ฒ” ์คํํ ์ง ๊ด๋ฆฌํ๋ ๋๊ตฌ์ผ.
ํ ์ค๋ก ๋งํ๋ฉด:
“์ฌ๋ฌ ์์ (job)์ ์ ํด์ง ์์์ ์๊ฐ์ ์๋ ์คํํด์ฃผ๋ ์ค์ผ์คํธ๋ ์ด์ ๋๊ตฌ”
Airflow๋ฅผ ์ ์ฐ๋๊ฐ?
๋ฐ์ดํฐ ์์ ํ์ค์ ๋ณดํต ์ด๋ ๐
- A ์์ ๋๋์ผ B ์คํ
- B ์คํจํ๋ฉด C ์คํํ๋ฉด ์ ๋จ
- ๋งค์ผ ์๋ฒฝ 2์์ ์๋ ์คํ
- ์คํจํ๋ฉด ์๋ฆผ ๋ฐ๊ณ ์ฌ์คํ
๐ ์ด๋ฐ ๊ฑธ ์ฌ๋์ด ์๋์ผ๋ก ํ๋ฉด ๋ฐ๋ก ์ง์ฅ
๐ ๊ทธ๋์ Airflow๊ฐ ๋์ ๊ด๋ฆฌ
ํต์ฌ ๊ฐ๋ 5๊ฐ์ง (์ด๊ฑฐ๋ง ์๋ฉด 80%)
1๏ธโฃ DAG (Directed Acyclic Graph)
- ์์ ํ๋ฆ ์ ์ฒด ์ค๊ณ๋
- “์ด ์์ → ๋ค์ ์์ ” ๊ด๊ณ ์ ์
Extract → Transform → Load
๐ ์์๊ฐ ์๋ ์์ ๋ฌถ์
2๏ธโฃ Task
- DAG ์์ ํ๋์ ์์ ๋จ์
- ์:
- Python ์คํ
- SQL ์คํ
- Bash ์คํ
- API ํธ์ถ
๐ Task ์ฌ๋ฌ ๊ฐ = DAG ํ๋
3๏ธโฃ Operator
- Task๋ฅผ ์ด๋ป๊ฒ ์คํํ ์ง ์ ์
- ์์ฃผ ์ฐ๋ ๊ฒ:
- PythonOperator
- BashOperator
- SQL/BigQueryOperator
๐ Task์ ์คํ ๋ฐฉ์
4๏ธโฃ Scheduler
- “์ง๊ธ ์ด DAG ์คํํ ์๊ฐ์ธ๊ฐ?”
- ์คํ ์์ ํ๋จ ๋ด๋น
๐ ๋๋ ์ญํ
5๏ธโฃ Executor
- ์ค์ ๋ก ์์ ์ ์ด๋์ ๋๋ฆด์ง ๊ฒฐ์
- ์:
- LocalExecutor
- CeleryExecutor
- KubernetesExecutor
๐ ๊ทผ์ก ์ญํ
Airflow ๋์ ํ๋ฆ (์์ฃผ ์ฝ๊ฒ)
1๏ธโฃ DAG ์ ์ (Python ํ์ผ)
2๏ธโฃ Scheduler๊ฐ ์คํ ์์ ํ๋จ
3๏ธโฃ Executor๊ฐ Task ์คํ
4๏ธโฃ ์ฑ๊ณต/์คํจ ์ํ ๊ธฐ๋ก
5๏ธโฃ UI์์ ํ๋์ ํ์ธ
Airflow๋ “๋ฌด์์” ํ์ง ์๋๊ฐ โ
โ ๋ฐ์ดํฐ ๋ณํ ๋๊ตฌ ์๋
โ SQL ์ฑ๋ฅ ์ต์ ํ ์ ํด์ค
โ Spark๋ฅผ ๋์ฒดํ์ง ์์
๐ Airflow๋ “์ผ์ + ์์ + ์ํ ๊ด๋ฆฌ”๋ง ์ฑ ์
Airflow๋ฅผ ์ฐ๋ฉด ์ข์ ๊ฒฝ์ฐ (์ฒดํฌ๋ฆฌ์คํธ)
โ ๊ฐ๋ ฅ ์ถ์ฒ ์ํฉ
- ETL ํ์ดํ๋ผ์ธ์ด ์๋ค
- ์์ ๊ฐ ์์กด์ฑ์ด ์๋ค
- ์ ๊ธฐ ์คํ(์ค์ผ์ค๋ง)์ด ํ์
- ์คํจ ์ ์ฌ์๋/์๋ฆผ ํ์
- ์ด์ ํ์ดํ๋ผ์ธ์ด ์๋ค
โ ๊ตณ์ด ์ ์จ๋ ๋๋ ๊ฒฝ์ฐ
- ๋จ๋ฐ์ฑ ๋ถ์
- ์์ 1~2๊ฐ
- ์๋ ์คํํด๋ ๋จ
- Notebook ์์ฃผ ์คํ
Airflow vs DBT (ํท๊ฐ๋ฆฌ๋ ํฌ์ธํธ ์ ๋ฆฌ)
๊ตฌ๋ถAirflowDBT
| ์ญํ | ์ค์ผ์คํธ๋ ์ด์ | ๋ฐ์ดํฐ ๋ณํ |
| ์ด์ | ์ธ์ /์์/์คํ | SQL ๋ก์ง |
| ์ธ์ด | Python | SQL |
| DAG | ์์ ํ๋ฆ | ๋ชจ๋ธ ์์กด์ฑ |
| ๊ด๊ณ | DBT๋ฅผ ์คํ์ํด | Airflow์ ์ํด ์คํ๋จ |
๐ Airflow + DBT๋ ๊ฐ์ด ์ฐ๋ ๊ฒ ์ ์
๋น์ ๋ก ์ดํดํ๊ธฐ ๐ง
- Airflow: ๊ณต์ฅ ์์ฐ ๊ด๋ฆฌ์
- DBT: ๊ณต์ฅ ์ ๊ฐ๊ณต ๊ธฐ๊ณ
- DW: ์ฐฝ๊ณ
- Spark: ๋ํ ์๋ ๊ฐ๊ณต ๋ผ์ธ
์ค๋ฌด์์ ์์ฃผ ์ฐ๋ ํจํด
Airflow
โโ raw ๋ฐ์ดํฐ ์์ง
โโ Spark / Python ETL
โโ dbt run
โโ dbt test
โโ ์๋ฃ ์๋ฆผ
๐ Airflow๋ “ํ์ดํ๋ผ์ธ ์ ์ฒด๋ฅผ ๋ฌถ๋ ์ปจํธ๋กค ํ์”
๋ธ๋ก๊ทธ์ฉ ํ ๋ฌธ์ฅ ์์ฝ
Airflow๋ ๋ฐ์ดํฐ ์์ ์์ฒด๋ฅผ ์ฒ๋ฆฌํ๋ ๋๊ตฌ๊ฐ ์๋๋ผ,
๋ฐ์ดํฐ ์์ ์ด ‘์ ๋, ์ฌ๋ฐ๋ฅธ ์์๋ก, ์์ ์ ์ผ๋ก’ ์คํ๋๋๋ก ๊ด๋ฆฌํ๋ ๋๊ตฌ๋ค.
'DataEngineering > Airflow' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Airflow Operator์ ์ข ๋ฅ (0) | 2026.02.01 |
|---|