
Self Serving Data Platform 구축하기 (feat. Airflow)
두줄요약
YAML 템플릿과 Airflow 팩토리 패턴으로 셀프 서빙 데이터 파이프라인을 구축했습니다.\n파티셔닝·의존성·멱등성을 추상화해 데이터 엔지니어 의존도를 낮췄습니다.
문제 상황
- 데이터 엔지니어가 전사 데이터 파이프라인 생성·운영을 전담하며 발생한 인지 부하와 요청 병목
- 분석가·엔지니어의 적시 데이터 조회를 위한 데이터 엔지니어 의존성
구조와 흐름
- S3를 SSOT로 활용하고 Athena로 대용량 전처리, Redshift로 애드혹 쿼리·대시보드 지원
- YAML 설정을 파이프라인 유형별 DagBuilder와 DagFactory가 Airflow DAG로 변환하는 구조
- Athena 쿼리 실행, S3 저장, 파티션 매핑, 통계 수집 태스크의 자동 구성
해결 방법
- YAML 기반 템플릿으로 스케줄, 쿼리, 스키마, 저장 경로, 업스트림 의존성 설정 단순화
- ExternalTaskSensor 기반 의존성으로 원천 데이터 완전성 확인
- 결과 저장 전 기존 S3 경로 삭제로 재실행 가능한 멱등성 확보
선택 이유
- 파티션 prefix 자동 매핑으로 Athena 스캔 비용과 쿼리 성능 고려
- 팩토리 패턴으로 기존 코드 수정 없이 Redshift·MySQL-S3 등 새 파이프라인 유형 확장


