17. Exploring Your Data - Introducing the Query Language :: 2015/04/22 17:05

[Introducing the Query Language]

Elasticsearch query 실행하는데 사용할 있는 JSON Style domain-specific language 제공한다. 이것은 Query D (http://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html) 참조하고 있다. Query language 종합적이고, 처음에는 겁이 수도 있지만, 가지 기본적인 예제를 통해서 실제적으로 배우기에는 가장 좋은 방법이다.


마지막 예제로 돌아가서 다음 Query 실행해 보자.


{
 
"query": { "match_all": {} }
}


위의 query 해부해 보면, query 파트는 query 대한 정의를, match_all 실행하고자 하는 query 형태를 나타낸다. match_all query 특정 index 모든 document 대한 검색을 나타낸다.


Query 파라미터에 더하여 검색 결과에 영향을 주는 다른 파라미터를 넘길 수도 있다. 예를 들면, 다음 예제는 match_all 결과 중에 첫번째 document 리턴한다.


curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
  "query": { "match_all": {} },
  "size": 1
}'


size 값이 지정되지 않으면 기본적으로 10건을 리턴한다.

다음 예제는 11번째에서 20번째 document 리턴한다.


curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
  "query": { "match_all": {} },
  "from": 10,
  "size": 10
}'


from 파라미터 (0-based) 시작지점을 의미하고, size 파라미터는 from 파라미터로부터 얼마나 많은 document 리턴할 것인지를 의미한다. 검색 결과에 대한 paging 구현할 유용하다. from 없으면 default 0이다.


다음 예제는 match_all 수행하고 내림차순으로 account balance (계좌 잔액) 기준 정렬한 결과를 10 (default) 리턴하는 예제이다.


curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
  "query": { "match_all": {} },
  "sort": { "balance": { "order": "desc" } }
}'

2015/04/22 17:05 2015/04/22 17:05
Trackback Address :: http://www.yongbi.net/trackback/701
[로그인][오픈아이디란?]
오픈아이디로만 댓글을 남길 수 있습니다
Name
Password
Homepage

Secret
< PREV |  1  |  ...  101  |  102  |  103  |  104  |  105  |  106  |  107  |  108  |  109  |  ...  566  |  NEXT >