5AMSUNG

[kibana] Search Profiler 7.9.2 본문

Elastic Stack/kibana

[kibana] Search Profiler 7.9.2

짝구이 2023. 5. 8. 15:56
반응형

원인좀 파악해주세요. 라고 빡치게 한다면 Search Profiler 를 사용해보자.

이유를 설명해주면 근거를 대라고 하는 얼토당토 않은 사람도 많으니..  걀걀

 

Kibana Dev Tools 에 가면 가장많이 쓰는 Console 옆에 Search Profiler 라는 탭(?) 이 있다.  눌러보자

이런화면인데 왼쪽은 쿼리를 넣고 오른쪽에서는 Query 와 Aggregation 의 프로파일링된 내용을 확인 할 수 있다. 

자.. 쿼리를 넣고

 

파란버튼 Profile 클릭 하면 아래와 같이 프로파일된 내용을 확인 할 수 있다. 

디테일을 봐볼까?

View details 를 클릭해보면 상세 내용을 확인할 수 있다. 눌러보자

Lucene 구문 으로 바뀐 structure 쿼리를 볼 수 있다. 

놀라운 사실..

match 쿼리의 속은 term query 였다...

 

토큰 + SYNONYM 토큰은 하나의 쿼리에서 실행되고 분해된 꼴을 보니 white space 로 분해 된거 같은데 

그 기준으로 생성된 쿼리들은 multi match Query 의 Operator 의 영향을 받는다. 그것은..

Bool Query 하위에 있는 dismax Query 들이 Operator 에 맞춰 조회가 되어야 검색결과로 나온다는 것이다

 

오늘 이 대단원의 삽질을 하게 만든 이유를 확인하는 과정을 요약하자면

  1. 검색쿼리추출
  2. 색인된 텀 확인
  3. 검색어 전처리에 사용된 analyzer 확인 해서 토큰 분해
  4. kinaba Search Profiler 를 사용해서 Query 확인
  5. 문제 해결
  6. 퇴근

Search profiler 안써도 되긴하지만 왜 안되요 근거를 제시하세요 하면 방어용으로 쓸만하다..

실행시간도 나오니까... 쿼리가 느릴때 원인 파악에 좋을 듯 하네.. 

 

반응형

'Elastic Stack > kibana' 카테고리의 다른 글

[kibana 8] Kibana Maps  (0) 2023.05.08