도큐멘트(document) 추가
: 생성할때는 메소드 핸들러를 PUT 으로 할수도 있지만, 아래 예와 같이 id 값을 지정할때 POST 로 메소드를 선택해야 한다.
$ curl -XPOST 'localhost:9200/books/es/1' -d '{"title":"Elasticsearc Server", "published": 2013}'
$ curl -XPOST 'localhost:9200/books/es/2' -d '{"title":"Mastering Elasticsearch", "published": 2013}'
$ curl -XPOST 'localhost:9200/books/solr/1' -d '{"title":"Apache Solr 4 Cookbook", "published": 2012}'
인덱스 맵핑(mapping)
$ curl -XGET 'localhost:9200/books/_mapping'
$ curl -XGET 'localhost:9200/books/_mapping?pretty'
$ curl -XGET 'localhost:9200/shakespeare/_mapping?pretty'
도큐먼트 변경
$ curl -XPOST http://localhost:9200/books/es/1/_update -d '{"script": "ctx._source.title = \"Elasticsearch Server\""}'
--> type 이 es 이고, id 1 인 데이터의 title 값을 "Elasticsearc Server" 에서 "Elasticsearch Server" 로 변경.
검색(retrieve)
$ curl -XGET 'localhost:9200/books/_search?pretty'
--> books 인덱스 전체 내용 검색 결과를 JSON 포맷팅한 결과로 표시
$ curl -XGET 'localhost:9200/books,shakespeare/_search?pretty'
--> books, shakespeare 인덱스 전체 내용을 표시
$ curl -XGET 'localhost:9200/books/_search?pretty&q=title:elastic'
--> title 값이 "elastic" 인 내용을 표시. 단어 비교를 equal 로 하기때문에 검색 결과가 없음
$ curl -XGET 'localhost:9200/books/_search?pretty&q=title:elasticsearch'
--> title 값이 "elasticsearch" 인 내용을 표시. 입력 데이터는 "Elasticsearch" 이지만 대소문자 구분안하기 때문에 검색 결과는 2건
분석(analyze)
$ curl -XGET 'localhost:9200/books/_analyze?field=title' -d 'Elasticsearch Server'
검색 파라미터
$ curl -XGET 'localhost:9200/books/_search?pretty&q=published:2013'
--> published 값이 2013 인 데이터 검색
$ curl -XGET 'localhost:9200/books/_search?pretty&q=elasticsearch&df=title'
--> df : 기본 검색 필드를 결정.
$ curl -XGET 'localhost:9200/books/_search?pretty&q=published:2013&explain=true&df=title&default_operator=AND'
--> explain 값이 true 이면, 해당 도큐먼트의 explain 정보(_explanation json 객체 정보가 추가됨)를 표시함.
정렬(sort)
$ curl -XGET 'localhost:9200/books/_search?pretty&q=published:2013&sort=published:desc'
--> published 가 2013 인 도큐먼트 데이터를 내림차순 정렬
$ curl -XGET 'localhost:9200/books/_search?pretty&sort=published:desc'
--> 내림차순(desc) 정렬
$ curl -XGET 'localhost:9200/books/_search?pretty&sort=published:asc'
--> 오름차순(asc) 정렬
결과값 제한(result window)
$ curl -XGET 'localhost:9200/books/_search?pretty&size=5&from=10'
size : 기본값은 10. 최대 결과값 수.
from : 기본값은 0. n 번째 값 이후부터 결과값이 반환되도록 설정. 10 이면 11번째 데이터부터 결과값이 반환됨.
'Engineering > Elasticsearch' 카테고리의 다른 글
Elastricsearch 에서 사용하는 라이브러리들 (0) | 2014.11.27 |
---|---|
Elasticsearch cluster 테스트 (0) | 2014.11.25 |