term query를 "text" 타입 필드에 사용하면 이점이 없어질까요?
예제 하실 때 보면, _score 값이 계산된 것처럼 보이긴 했습니다.
query value의 대문자를 소문자로 변경하는 처리(Lowcase Token Filter)는 하지 않는 것 같지만, _score는 계산하기 때문에..
제대로 성능의 이점을 보려고 한다면 keyword 타입 필드에서 사용하는 것이 좋은 것인지요?
Answer 2
0
안녕하세요 정광택님,
인프런 인턴이 정확히 잘 얘기해줬네요.
간단하게 얘기하자면, 네, term query를 "text" 타입 필드에 사용하는 것은 일반적으로 이점이 없어집니다. term query는 "keyword" 타입 필드에서 사용하는 것이 더 적절하며, 성능상으로도 더 최적화된 결과를 얻을 수 있습니다.
0
안녕하세요, 인프런 AI 인턴입니다. 정광택님.
Elasticsearch에서 term query를 “text” 타입 필드에 사용하는 경우 이점에 대해 궁금하신 것 같네요. 이에 대해 설명드리겠습니다.
term query와 “text” 필드 타입
- Term Query:
term query는 주어진 검색어와 정확히 일치하는 문서를 찾는 데 사용됩니다. 이 쿼리는 분석되지 않은 데이터를 대상으로 수행되므로, “text” 타입 필드에 사용하면 의도한 대로 작동하지 않을 수 있습니다.
- Text 필드: “text” 타입 필드는 기본적으로 분석되어 저장됩니다. 즉, 대소문자, 형태소 분석 등이 적용됩니다.
성능 이점 및 적절한 사용
term query를 “text” 타입 필드에 사용하는 경우, 분석 전의 원본 형태와 정확히 일치하는 내용을 찾기 어려워 이점이 제한될 수 있습니다.
- 따라서 “keyword” 타입 필드에서 사용하는 것이
term query의 성능을 제대로 발휘하기 위해 권장됩니다. 이는keyword필드가 분석되지 않은 상태로 저장되기 때문입니다.
관련 질문과 예제에 대한 더 깊이 있는 설명이 필요하시다면, 동일한 주제를 다루는 기존 질문을 확인해보세요:
- Elasticsearch에서 Term Query와 Match Query의 차이점
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
7~8강 Log Level 관련 상세 설명/명세가 필요할 경우 log.info/warn <-> 주석의 적절한 사용 방법에 대한 질문
1
46
1
멀티 필드 실무 질문드립니다.
0
43
1
페이지네이션 질문드립니다.
0
41
3
insert , upsert 질문드립니다.
0
46
2
마이크로미터는 별도 설정이 없어도 되나요?
0
65
1
logstash 파이프라인 설정
0
58
1
postgres 수업중 case 함수 스크립트 자료
0
50
1
discover> create data view 하는데 다른화면 나옵니다.
1
59
2
강의 pdf는 따로 제공안해주시는 건가요?
0
44
1
안녕하세요 질문 있습니다.
0
85
2
vs code 환경에서 실행방법
0
119
2
Replication 설정 후에도 node가 1개만 조회됩니다.
0
82
2
docker cp 명령 질문입니다.
1
90
1
index join 에 대한 질문
0
128
2
동시성 관련되어 궁금증이 생겨 질문을 남깁니다
0
117
1
multi node로 띄우는 상황에서 궁금증이 생겨 질문을 남깁니다
0
193
4
윈도우에서 curl 인증문제
0
387
3
docker-compose로 실행 시 es01이 중지됩니다.
0
242
2
setup-1 이 실행되었다가 꺼지는 현상
0
172
2
update 질문드립니다.
0
101
2
소스 코드의 변경이 없게 하기 위해서는...
0
132
2
롤오버된 인덱스의 경우 리인덱싱을 어떻게 하면 되나요?
0
165
1
Dynamic Template
1
176
3
질문 하나 드립니다.
0
151
2

