본문 바로가기

Backend Study/ELK Stack

[Elastic Search] 동의어사전

Tokenizer에 의해 토큰이 분리되면 다양한 토큰 필터를 적용해서 가공이 가능하다. 그중에서 동의어 처리에 대한 필터는 엘라스틱서치에서 제공하는 Synonym 필터를 사용한다. 

 

동의어 사전은 원문에 특정 단어가 존재하지 않아도 색인 데이터를 토큰화해서 동의어나 유의어에 해당하는 단어를 함께 저장하여 검색이 가능하도록 하는 기능이다. 

 

동의어를 추가하는 방법은 크게 두가지로, 동의어를 매핑 설정 정보에 미리 파라미터로 등록하거나 특정 파일을 별도로 생성해서 관리할 수 있는데 대부분 후자를 이용한다. 

 

동의어 파일은 엘라스틱서치가 설치된 서버 아래 config 디렉토리에 생성한다. 

 

저장 방식

1. 동의어 추가: 단어를 쉼표로 분리하여 등록한다.

"Elasticsearch"와 "엘라스틱서치"를 동의어로 지정하고 싶다면 동의어 사전 파일에 "Elasticsearch, 엘라스틱서치"라고 등록한다.

 

 

2. 동의어 치환: 화살표 "=>"로 표시한다. 

예를 들어 "Harry => 해리"라고 한다면 "Harry"를 "해리"로 변경해서 색인하겠다는 의미이다. 

 

참고 + 동의어 사전 적용 방법 

https://sung-studynote.tistory.com/112