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

간단 요약

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