
Logstash에서 Debezium CDC로 전환한 이유
두줄요약
PostgreSQL 조인 검색을 Elasticsearch로 옮기며 Logstash 폴링과 Debezium CDC를 비교했습니다. 삭제 반영 문제를 해결하기 위해 WAL 기반 CDC와 검색 서비스 분리를 적용했습니다.
핵심 내용
- PostgreSQL 직접 검색에서 Elasticsearch 검색으로 전환한 배경과, 다국어 장소·콘텐츠 검색에서 LIKE 기반 조회의 한계 정리
- Logstash JDBC 폴링으로 초기 적재와 수정 반영은 가능했지만, 삭제 이벤트를 감지하지 못해 검색 결과 불일치가 발생한 문제 설명
- Debezium CDC로 전환해 WAL 변경 로그를 구독하고, 삭제 포함 모든 변경을 Kafka를 거쳐 Elasticsearch에 반영하는 구성으로 개선
- 검색 서비스 분리, nori 형태소 분석기 적용, 복제 슬롯 운영 시 주의점까지 함께 정리


