
데이터 수집, 적재, 검색엔진 인덱싱 과정
코드너리 | 2022. 03. 07
데이터 파이프라인
Event Driven
사용된 기술:




간단 요약
- 먼저 오라클 DB에 상품 기본정보로 전체, 증분 데이터에 대해 Kafka 메시지 큐로 프로듀싱합니다.
- 상품 부가정보는 동일하게 오라클에 있으며, MongoDB 컬렉션별로 나누어 배치 동기화하고 이것을 컨슈머 로직에서 참조하게 됩니다.
- N개의 컨슈머 프로세스에서 상품 topic의 파티션을 적절히 분배하여 컨슈밍하고 상품 메시지를 인덱싱 포멧에 맞게 조립, 정제하고 결과를 다시 MongoDB에 적재합니다.
- 적재된 상품 컬렉션을 배치 프로그램으로 Elasticsearch에 인덱싱합니다.
- 상품 적재/인덱싱은 전체, 증분으로 구분하여 배치를 운영중입니다.
- 전체 대상은 하루에 한번씩 새벽 시간대에 검색 대상 전체 상품에 대해서 프로듀싱 후, 적재 및 새로운 인덱스로 인덱싱하고 신규로 서비스 인덱스로 교체합니다.
- 증분 대상은 검색에서 즉시 업데이트가 필요한 재고 상태나 주요 변경 사항에 대해서 현재 서비스중인 인덱스에 인덱싱하고 있습니다.