· 기업-기술-블로그-탐구-일지

「29CM」 신규 검색 서비스 전환기 (feat. 컬리)

29CM와 컬리의 검색 전환기를 나란히 읽고, 원천 데이터와 변경 데이터를 카프카 발행/구독으로 흘려 검색엔진 인덱싱 파이프라인을 만드는 공통 구조를 뽑아낸 탐구 기록.

📅 탐구 일자: 2024-09-30

🔗 분석한 블로그 포스트

🏷️ 주요 키워드

  • 데이터 관리, 검색, Spring Boot, Elasticsearch

📚 핵심 내용 요약

  • ES 접근 서비스 관리 파편화, 원천 데이터의 타 도메인 강한 의존성 해결을 위한 검색 인덱싱 파이프라인 구축

💡 주요 기술적 인사이트

  1. Spring Data Elastic 이용한 검색 인덱싱(리인덱싱) 작업
  2. 카프카 (메시지큐)를 활용 (변경된 데이터 및 원천 데이터 관리)

🤔 개인적인 견해 및 분석

  • 검색 서비스는 카프카, 오픈소스 검색(Elsasticsearch) 또는 AWS OpenSearch Service의 조합으로 기업들에서 사용한다는 점을 알 수 있다.
  • 검색 서비스에서 중요한 점은 원천데이터와 변경된 데이터를 어떻게 관리하냐이다.

🛠️ 실제 적용 사례 또는 구현 방법

컬리 vs 29cm

비슷한 기술과 구조로 검색 서비스를 구축한 걸 살펴 볼 수 있다.

image

검색 서비스 개선 점 주요 문제점 2가지

결국에는 데이터 관리를 중점으로 검색 서비스를 구축한다.

image

29cm의 검색 인덱싱 파이프라인 주요 프로세스

메시지큐의 발행 & 구독이 핵심! 데이터 전달

image

🏆 핵심 takeaways

  1. 카프카를 이용한 발행, 구독 기능으로 검색엔진의 데이터를 축적한다.
  2. 검색 서비스는 검색엔진 기술이 필수적이다.

💬 추가 의견 / 질문

  • 카프카 + 검색엔진기술 조합이외에 다른 패턴이 있을까?
  • 카프카말고도 다른 기술을 이용해 데이터를 검색엔진에 인덱싱 할 수 있을까?