옴니채널 재고 정합성 한계에 대응하는 인벤토리 데이터 파이프라인 구축기
두줄요약
옴니채널 재고 정합성과 확장성 문제를 해결하기 위해 인벤토리 데이터 파이프라인을 이벤트 기반으로 재설계했습니다. Spring Batch, Kafka Fan-Out, Push/Pull 분리로 리드타임과 부하를 줄였습니다.
문제 상황
- 옴니채널 재고가 매장 운영, 구매 여정, 내부 시스템 전반에서 사용되며 높은 정합성과 낮은 지연이 동시에 요구되는 상황
- 기초재고 생성 지연, 단일 동기식 적재 병목, API 조회 방식의 과도한 Read 부하로 확장성 한계 발생
원인 분석
- 재고 변동 이벤트 증가에 따라 기초재고 생성 연산량이 급증하고 리드타임이 지속적으로 증가
- 매장재고, 시계열재고, 품절여부가 하나의 파이프라인에 묶인 높은 결합도 구조
- 모든 사용처에 단일 API 조회 방식을 적용해 불필요한 전체 데이터 조회와 오버헤드 발생
해결 방법
- Spring Batch Partitioning으로 매장 그룹 단위 병렬 처리 구성, 기초재고 생성 시간 단축
- Amazon MWAA로 기초재고 워크플로 스케줄링 자동화
- Kafka Fan-Out으로 데이터 모델별 독립 소비 구조 분리
- 서비스 성격에 따라 이벤트 기반 PUSH와 실시간 온디맨드 PULL로 전달 방식 분리
