이 글은 Data Engineering Zoomcamp Module 2 실습에서 사용한 Kestra와
데이터 엔지니어링 현업에서 가장 많이 쓰이는 Airflow를
학습·실습·운영 관점에서 비교 정리한 글입니다.
목차
- 워크플로 오케스트레이션 도구가 필요한 이유
- Kestra와 Airflow 개요
- 핵심 개념 비교
- 워크플로 정의 방식 비교
- 실행 및 운영 관점 비교
- 어떤 상황에서 어떤 도구를 선택할까
- 정리
1. 워크플로 오케스트레이션 도구가 필요한 이유
데이터 파이프라인이 복잡해질수록 다음과 같은 요구사항이 발생합니다.
- 작업 간 의존성 관리
- 정기 실행 및 실패 시 재시도
- 실행 이력·로그·상태 추적
- 운영 환경에서의 확장성
이를 해결하기 위해 워크플로 오케스트레이션 도구를 사용합니다.
대표적인 선택지가 Airflow, 그리고 최근 주목받는 Kestra입니다.
2. Kestra와 Airflow 개요
Kestra
- 비교적 최근에 등장한 오픈소스 오케스트레이션 도구
- YAML 기반 워크플로 정의
- UI 중심 설계
- 이벤트 기반 실행 지원
- Docker 환경에서 빠른 실행 가능
✅ 학습 난이도가 낮고, 로컬 실습에 매우 적합
Airflow
- 가장 널리 사용되는 워크플로 오케스트레이션 도구
- Python 기반 DAG 정의
- 방대한 사용자·레퍼런스
- 엔터프라이즈 환경에서 검증됨
✅ 표준에 가까운 도구지만 초기 설정과 학습 비용이 큼
3. 핵심 개념 비교
| 구분 | Kestra | Airflow |
| 워크플로 단위 | Workflow | DAG |
| 정의 방식 | YAML | Python |
| 실행 모델 | Event + Schedule | Schedule 중심 |
| UI | 기본 제공 (필수 구성) | 보조적 |
| 학습 곡선 | 낮음 | 높음 |
4. 워크플로 정의 방식 비교
Kestra – YAML 기반
id: etl_pipeline
namespace: zoomcamp
tasks:
- id: extract
type: io.kestra.core.tasks.scripts.Bash
command: python extract.py
- id: load
type: io.kestra.core.tasks.scripts.Bash
command: python load.py
특징
- 선언적 구성
- 파이프라인 구조가 한눈에 보임
- 비개발자도 이해 가능
Airflow – Python 기반 DAG
with DAG("etl_pipeline", schedule_interval="@daily") as dag:
extract = BashOperator(
task_id="extract",
bash_command="python extract.py"
)
load = BashOperator(
task_id="load",
bash_command="python load.py"
)
extract >> load
특징
- Python의 유연성 활용 가능
- 복잡한 분기/조건 처리에 유리
- 코드 복잡도 증가 가능성
5. 실행 및 운영 관점 비교
실행 방식
- Kestra
- UI에서 즉시 실행
- 파라미터 입력 후 수동 실행 용이
- 이벤트 트리거 기반 실행 지원
- Airflow
- 스케줄 기반 실행이 중심
- 수동 실행은 가능하나 UI 의존성 낮음
운영 관점
| 항목 | Kestra | Airflow |
| 초기 설치 | 매우 간단 | 복잡 |
| 로컬 실습 | 매우 적합 | 불편 |
| 대규모 운영 | 제한적 | 매우 강함 |
| 커뮤니티 | 성장 중 | 큼 |
6. 어떤 상황에서 어떤 도구를 선택할까
Kestra가 적합한 경우
- 데이터 엔지니어링 입문 / 학습
- 로컬 실습 중심 환경
- YAML 기반 선언적 파이프라인 선호
- 이벤트 기반 워크플로 필요
✅ Zoomcamp, 개인 프로젝트, POC에 적합
Airflow가 적합한 경우
- 이미 운영 중인 데이터 플랫폼
- 복잡한 의존성, 조건 분기 다수
- 장기간 운영되는 엔터프라이즈 환경
- 풍부한 플러그인·레퍼런스 필요
✅ 대규모 서비스 운영에 적합
7. 정리
Kestra와 Airflow는 서로 대체 관계라기보다는 목적이 다른 도구에 가깝습니다.
- Kestra : 빠른 시작, 직관적인 워크플로, 학습 친화적
- Airflow : 업계 표준, 강력한 확장성, 엔터프라이즈 검증
Data Engineering Zoomcamp에서는 개념 학습과 실습 효율을 위해 Kestra를 사용하지만,
실무에서는 Airflow를 접할 가능성이 높습니다.