- Multi-Index
- GET /twitter/_search?q=user:kimchy
- GET /kimchy,elasticsearch/_search?q=tag:wow
- GET /_all/_search?q=tag:wow
- URI Search
- URI에 사용할 수 있는 매개변수
- q : 특정필드 검색하고 싶을 때
- _source : 도큐먼트 내용 표시하지 않고 hits와 scores 등의 정보만 출력
- fields : 출력 결과에 표시할 필드
- sort : 검색 결과의 출력 순서 ex) ?sort=필드명:asc
- timeout : 제한 시간 지정
- from : 결과 어디서부터 출력할지 지정 ex) from=3 -> 4번째부터 출력
- size : 리턴 결과 개수 (기본 10개)
- URI에 사용할 수 있는 매개변수
- Request Body Search - 01
- SELET * FROM twitter WHERE user = 'modi'
GET /twitter/_search
{
"query" : {
"term" : { "user" : "modi" }
}
}
{
"took": 1,
"timed_out": false,
"_shards":{
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits":{
"total" : 1,
"max_score": 1.3862944,
"hits" : [
{
"_index" : "twitter",
"_type" : "_doc",
"_id" : "0",
"_score": 1.3862944,
"_source" : {
"user" : "modi",
"message": "trying out Elasticsearch",
"date" : "2009-11-15T14:12:12",
"likes" : 0
}
}
]
}
}
- Request Body Search - Sort
PUT /my_index
{
"mappings": {
"_doc": {
"properties": {
"post_date": { "type": "date" },
"user": {
"type": "keyword"
},
"name": {
"type": "keyword"
},
"age": { "type": "integer" }
}
}
}
}
GET /my_index/_search
{
"sort" : [
{ "post_date" : {"order" : "asc"}},
"user",
{ "name" : "desc" },
{ "age" : "desc" },
"_score"
],
"query" : {
"term" : { "user" : "kimchy" }
}
}
엘라스틱 공식문서를 참고하여 짧은 영어 실력으로 번역하고 이해한 내용을 정리하였습니다.
(참고 : https://www.elastic.co/guide/en/elasticsearch/reference/6.5)