
지옥 같던 PR 리뷰에서 탈출하여 데이터 파이프라인 리드타임을 10분의 1로 줄인 비결
당근 규모의 방대한 서비스 데이터를 효율적으로 관리하기 위해 구축한 선언적 ELT 플랫폼의 탄생 과정을 다룹니다. 코드와 설정의 강결합 문제를 해결하고 AI 에이전트를 활용해 수백 개의 파이프라인을 자동 마이그레이션한 실전 전략과 아키텍처를 상세히 공유합니다.
수동으로 파이프라인을 관리하며 병목 현상을 겪고 있는 데이터 엔지니어링 팀이나, 도메인 팀에게 데이터 셀프서비스 환경을 제공하고자 하는 플랫폼 조직에 필독을 권장합니다.
당근은 글로벌 서비스 전반의 200개 이상 DB 데이터를 BigQuery로 전송하고 있으나, 기존에는 파이프라인 설정과 실행 코드가 단일 레포지토리에 강하게 결합되어 있었습니다. 이로 인해 새로운 테이블을 추가할 때마다 코드베이스 학습과 PR 리뷰가 필수적이었으며, 데이터 팀의 리뷰 병목과 서비스 팀의 운영 부담이 심화되는 구조적 한계가 존재했습니다.
기존의 Airflow와 Spark 실행 레이어는 유지하되 UI 기반으로 파이프라인을 선언할 수 있는 'DT Platform'을 구축하여 코드와 설정을 분리했습니다. 설정을 JSON DSL 형태로 S3에 저장하고 이를 통해 DAG을 동적으로 생성하는 구조를 도입했으며, Claude Code 에이전트와 Notion을 활용해 기존 203개의 파이프라인을 자동화된 스크립트로 2주 만에 성공적으로 마이그레이션했습니다.
파이프라인 추가 및 변경을 위한 평균 리드타임이 4.5일에서 0.4일로 약 91% 단축되었으며, 관련 요청 건수 또한 크게 증가하여 데이터 연동 허들이 낮아졌음을 확인했습니다. 또한 UI를 통해 파이프라인의 실행 상태와 비용 정보를 한눈에 파악할 수 있게 되어 정성적인 운영 효율성도 크게 개선되었습니다.
Trade-off
오픈소스 솔루션인 Airbyte 도입을 검토했으나 대규모 테이블의 동기화 속도 문제와 세밀한 Spark 리소스 튜닝의 한계로 인해 직접 플랫폼을 개발하는 결정을 내렸습니다. 이는 초기 개발 비용과 기존 파이프라인 마이그레이션을 위한 엔지니어링 공수가 투입되어야 함을 의미하지만 장기적인 확장성과 최적화 관점에서 선택되었습니다.
데이터 소스에서 데이터를 추출하여 목적지에 먼저 로드한 뒤 필요한 변환을 수행하는 프로세스입니다. 데이터 웨어하우스의 성능을 활용해 유연한 처리가 가능하다는 특징이 있습니다.
특정 도메인의 문제를 해결하기 위해 최적화된 형식 언어로, 여기서는 파이프라인의 명세를 구조화된 JSON 데이터로 정의한 것을 의미합니다.
Airflow에서 코드를 수동 작성하지 않고 설정 파일이나 DB 정보를 기반으로 실행 시점에 워크플로우를 자동으로 생성하는 기술입니다.




