Spark + Delta Lake로 배치 처리 파이프라인
Apache Spark와 Delta Lake를 조합해 일 단위 대용량 배치 처리 파이프라인을 구축한 경험이 있습니다. 수십억 건의 로그 데이터를 단일 서버에서 처리하다 보니 배치 처리 시간이 12시간을 넘어 비즈니스 리포트 마감을 자주 놓쳤습니다. Spark DataFrame API로 분산 처리를 전환하고, 파티셔닝 전략을 날짜·이벤트 타입 기준으로 설계해 셔플 비용을 줄였습니다.
Delta Lake의 ACID 트랜잭션으로 파이프라인 중단 시 데이터 정합성을 보장하고, Time Travel 기능으로 이전 버전 데이터 복원이 가능해졌습니다. 처리 중 발생한 가장 어려운 문제는 스큐(Skew) 현상이었고, Salt 기법으로 핫 파티션을 분산해 해결했습니다. 결과적으로 처리 시간이 12시간에서 1.5시간으로 단축됐고 비용도 55% 절감됐습니다.