Moait
홈인기 피드모든 블로그모든 태그
홈인기 피드모든 블로그모든 태그
NRTI (Near Real-Time Indexing) 섬네일

NRTI (Near Real-Time Indexing)

딜리셔스 favicon딜리셔스·Architecture·
Apache KafkaDebeziumElasticsearchAmazon DynamoDBElastic Cloud on Kubernetes
2022년 11월 21일1

AI 요약

이 글은 AI가 요약했어요. 정확한 내용은 꼭 원문을 확인해 주세요!

핵심 요약

딜리셔스가 Kafka 기반의 Debezium CDC와 Elasticsearch/ECK를 활용한 Near Real-Time Indexing(NRTI) 아키텍처를 도입해 색인 처리 속도와 데이터 포괄성을 대폭 개선했습니다.

구현 방법

  • Debezium을 통해 MySQL의 binlog를 읽어 Topic으로 발행하고, before/after 데이터를 비교하여 색인 이벤트를 생성합니다.
  • Topic을 3개 Partition으로 분할하고 Indexer Consumer Application도 3대로 구성하여 1:1 매칭으로 정합성을 유지합니다.
  • Kafka Connectors(Debezium Connector 포함)와 Kafka UI를 이용해 파이프라인을 구성하고 운영합니다.
  • Elasticsearch를 Kubernetes에서 ECK로 운영하고, 파일비트/메트릭비트를 통한 모니터링 및 Snapshot 백업(S3 연동)으로 안정성을 강화합니다.
  • 활성/비활성/삭제 포함 전체 상품 데이터를 색인하도록 확장했으며, 시스템 아키텍처를 간소화했습니다.

주요 결과

  • 전체 색인 데이터 양은 AS-IS 대비 4배 증가했으며, 색인 처리 시간은 3시간 30분에서 40분으로 단축되어 약 80% 개선되었습니다.
  • 증분 색인의 처리 속도는 1분3분에서 1초20초로 대폭 개선되어 약 90%의 향상를 달성했습니다.
  • 데이터 포괄성이 크게 향상되어 활성/비활성/삭제를 포함한 전체 데이터 색인이 가능해졌습니다.
  • 향후 다른 파트에서도 Topic 구독이 가능해지고 Debezium으로 다양한 DB 데이터를 가져오는 확장성, Sink Connector 도입으로 Consumer 애플리케이션 없이도 색인 가능성이 제시되었습니다.

연관 피드

%가 높을수록 이 글과 비슷할 가능성이 높아요!
ES 검색엔진을 활용한 상품 검색 — basic 섬네일
73%

ES 검색엔진을 활용한 상품 검색 — basic

핏펫 favicon핏펫·2023년 01월 10일
다나와 검색의 색인 최적화 사례 섬네일
72%

다나와 검색의 색인 최적화 사례

다나와 favicon다나와·2024년 11월 25일
Kafka에서 S3로 실시간 데이터 수집 파이프라인 설계와 구축기 섬네일
72%

Kafka에서 S3로 실시간 데이터 수집 파이프라인 설계와 구축기

펫프렌즈 favicon펫프렌즈·2025년 11월 07일