일래스틱서치 검색에는 두 개의 주요 개념인 질의(query)와 필터(filter)가 있다.


 질의(query)는 일치하는 결과가 내부 루씬의 득점 알고리즘 (scoring algorithm)기능을 이용하여  scoring하는 것을 의미한다.


필터(filter)는 score 없이 일치하는 결과만 가지고 결과를 얻는다.


따라서, 필터는 점수(scoring)을 계산할 필요가 없기 때문에 일반적으로 빠르고 캐시(cache)될 수 있다. 


필터를 일래스틱서치 문서에서 찾아보면서 cache 여부를 체크하며 보면 도움이 된다. 보통 cache 는 false로 되어 있다.



그러나, 전문 검색(full text query)일 때는 query가 월등히 빠르다.


참조

https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-filters.html

https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html

Posted by '김용환'
,