데이터 자동화의 정점이 ETL(Extract·Transform·Load)와 워크플로 오케스트레이션입니다.
「매일 새벽 3시에 DB에서 데이터 추출 → 가공 → 데이터 웨어하우스에 적재」 같은 복잡한 흐름을 안정적으로 운영하는 도구.
단순 파이썬 스크립트의 한계.
cron + 스크립트로 시작하지만 「작업 A 후 B 실행, 실패 시 재시도, 결과는 슬랙 알림, 의존성 있는 작업」 같은 요구가 생기면 직접 구현이 너무 복잡해집니다.
Apache Airflow.
가장 유명한 워크플로 도구.
DAG(Directed Acyclic Graph)로 작업 의존성 정의, 스케줄링·실행·재시도·알림·UI까지 통합.
Airbnb가 만들어 오픈소스화 → 데이터 엔지니어링 표준.
기본 개념.
DAG = 작업의 묶음.
Task = 개별 실행 단위.
Operator = Task의 종류(BashOperator, PythonOperator, SQLOperator 등).
UI에서 DAG·Task 상태를 한눈에, 실패 부분만 재실행도 가능.
대안과 트레이드오프.
Prefect·Dagster — Airflow의 모던 후속작, 학습 곡선 더 낮음.
작은 규모면 그냥 cron + 파이썬으로 충분, 복잡한 데이터 파이프라인이 되어야 Airflow급 도구의 이점이 보입니다.
한 줄 요약
복잡한 워크플로 자동화는 Airflow·Prefect·Dagster 같은 오케스트레이션 도구로.
DAG·Task·Operator로 의존성 정의, UI·재시도·알림이 통합됩니다.
더 알아볼 것
- Prefect — 모던 대안
- Dagster — 데이터 자산 중심
- cron으로 충분한 경우 vs Airflow가 필요한 경우