2024년 11월 09일
출처: 313DEVGRP
<aside> 📖 [LIST]
</aside>
Spring Boot 3.3
spring-data-elasticsearch
@Id - user필드를 만드는
Field - Keyword - 토큰 그 잡채, 검색, 집계
POST movie_search/_search
{
"query": {
"query_string": {
"default_field": "movieNmEn",
"query": "movieNmEn:* OR prdtYear:2017"
}
},
"from": 0,
"size": 5,
"sort": [
{
"_score": {
"order": "desc"
},
"movieCd": {
"order": "asc"
}
}
],
"_source": [
"movieCd",
"movieNm",
"mvoieNmEn",
"typeNm"
]
}
{
"size" : -- ➊
"from" : -- ➋
"timeout" : -- ➌
"_source" : { } -- ➍
"query" : { } -- ➎
"aggs" : { } -- ➏
"sort" : { } -- ➐
}
➊ 리턴받는 결과의 개수를 지정한다. 기본값은 10이다. ➋ 몇 번째 문서부터 가져올지 지정한다. 기본값은 0이며, 페이지별로 구성하려면 다음 번 문서는 10번째부터 가지고 오면 된다. ➌ 검색을 요청해서 결과를 받는 데까지 걸리는 시간을 나타낸다. timeout 시간을 너무 짧게 잡으면 전체 샤드에서 timeout을 넘기지 않은 문서만 결과로 출력되기 때문에 상황에 따라 결과의 일부만 나올 수 있다. 기본값은 무한대다. ➍ 검색 시 필요한 필드만 출력하고 싶을 때 사용한다. ➎ 검색 조건문이 들어가야 하는 공간이다. ➏ 통계 및 집계 데이터를 사용할 때 사용하는 공간이다. ➐ 문서 결과를 어떻게 출력할지에 대한 조건을 사용하는 공간이다.
{
"took": -- ➊
"timed_out": -- ➋
"_shards": {
"total": -- ➌
"successful": -- ➍
"failed": -- ➎
},
"hits": {
"total": -- ➏
"max_score": -- ➐
"hits": [ ] -- ➑
}
}
➊ 쿼리를 실행한 시간을 나타낸다. ➋ 쿼리 시간이 초과할 경우를 나타낸다. ➌ 쿼리를 요청한 전체 샤드의 개수를 나타낸다. ➍ 검색 요청에 성공적으로 응답한 샤드의 개수를 나타낸다. ➎ 검색 요청에 실패한 샤드의 개수를 나타낸다. ➏ 검색어에 매칭된 문서의 전체 개수를 나타낸다. ➐ 일치하는 문서의 스코어 값 중 가장 높은 값을 출력한다. ➑ 각 문서 정보와 스코어 값을 보여준다