Building Self-Healing Data Pipelines at Halodoc

Author: Dana Rabba | Source: Halodoc Blog | Published: 2026-05-04


한 줄 요약

Halodoc은 CDC 복구부터 종속성 캐스케이딩까지 6개 계층의 자가 치유 메커니즘을 도입하여 CDC 복구 시간을 45분에서 5분 미만으로, 온콜 알림을 주 5회에서 1회로 줄였다.

핵심 주장/내용

  • CDC 자동 복구: 3단계 적격성 검사(gate check)와 안전한 재시작 체크포인트 계산을 통해 CDC 파이프라인 장애를 자동으로 감지하고 복구한다
  • Source-vs-Lake 일관성 검증: 다운스트림으로 오류가 전파되기 전에 소스와 레이크 간 데이터 정합성을 먼저 확보한다
  • 미니 배치 처리: 누적 크기 기반 배치 할당으로 백로그 데이터를 효율적으로 복구한다
  • 스마트 메모리 스케일링: Airflow의 on_retry_callback을 활용해 OOM 발생 시 +25%/+40%/+60%로 점진적으로 메모리를 확장한다
  • 워터마크 기반 중복 탐지로 웨어하우스 락 충돌을 관리하고, BFS 탐색을 통한 레이어별 병렬 실행으로 캐스케이딩 종속성을 복구한다

주요 수치 / 사실

  • CDC 복구 시간: 45분 → 5분 미만
  • 온콜 알림: 주 5회 → 주 1회
  • OOM 메모리 스케일링 단계: +25% → +40% → +60% (점진적)

관련 위키


Source: 원문 보기