엘라스틱서치 페이징및 정렬
엘라스틱서치에서 기본적인 조회를 해보자
우선 전체 게시물을 조회하는 쿼리부터 알아보자
curl -u -XGET 'localhost:9200/eve/_search?pretty'
이렇게하면 기본적으로 10개만 보여준다. 토탈이 1만개여도...
그럼 20개를 보고 싶으면?
curl -XGET 'localhost:9200/eve/_search?pretty' -H 'Content-Type: application/json' -d '{"size": 20}'
이렇게 사이즈를 지정해주면 된다. json은 작은 따옴표로 반드시 묶어줘야한다.
그럼 페이징을 할려면 어떻게 해야할까?
curl -XGET 'localhost:9200/eve/_search?pretty' -H 'Content-Type: application/json' -d '{"size": 10, "from": 0}'
이렇게 from을 지정해준다.
불러온 게시물을 0번째것부터 보여준다는 거다.
두번째 페이지는 from이 어떻게 될까?
한페이지의 사이즈가 10이니까 두번째 페이지의 from은 10이된다.
즉 페이지별 시작(from) 게시물은
from = 페이지번호*페이지사이즈
가 되는것이다.
참고로 정렬하는 법도 알아보자.
curl -XGET 'localhost:9200/eve/_search?pretty' -H 'Content-Type: application/json' -d '{"size": 10, "from": 0,"sort": {"site_cnt":"asc"}}'
이렇게 sort를 해준다.
쉽다...