
검색 형태소 분석 사전 배포 과정 개선하기
17
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
검색 형태소 분석 사전 배포 과정 개선
이 게시물은 당근 검색플랫폼팀이 검색 형태소 분석 사전의 배포 과정을 개선한 프로젝트를 소개합니다.기존 문제점 및 개선 필요성
- 기존에는 기본 사전 업데이트 시 Elasticsearch 검색 클러스터 전체 배포가 필요해 운영 리스크가 큼
- 사전 업데이트 빈도 증가로 인해 배포 최소화와 안정성 확보가 중요했음
개선 아이디어와 도전
- 사전 데이터를 외부 파일로 분리하고 로컬 파일 시스템에서 로드하도록 플러그인 구조 변경 시도
- 싱글톤 패턴을 제거해 여러 사전 버전을 메모리에 올려야 해서 힙 메모리 사용량 급증 문제 발생
- 인덱스 스키마에 다중 Tokenizer 정의로 메모리 사용량이 증가함을 발견
재시도 및 최적화
- 불필요한 사전 데이터를 제거해 플러그인 크기를 33MB에서 7MB로 경량화
- 최대 2개의 최신 사전만 힙에 로드하는 싱글톤 매니저 객체 도입으로 메모리 사용 최적화
- 프로덕션에 안전하게 배포해 사전 업데이트 주기를 월 1회에서 일 1회로 단축
향후 계획
- 다른 클러스터로 점진적 배포 확대
- 업데이트 알람 및 모니터링 고도화
- 실패 시 Fallback 구성 등 안정성 강화 작업 진행 예정