엘라스틱서치 검색 방법 (URI, Request Body)

반응형
728x90
반응형

엘라스틱서치 검색 방법

엘라스틱 서치에서 제공하는 검색 API는 질의(Query)를 기반으로 동작한다.

 

1) URI 검색

2) Request Body 검색

 

URI 검색은 단순히 GET 방식처럼 URI 표기법을 사용하는 것이고, 2)번의 Request Body는 RESTFul API를 이용하여 Body에 조건을 표기하여 사용하는 방법이다.

 

 

URI 검색

URI를 이용하는 방식은 HTTP GET 요청을 활용하는 방식이다. 'key=Value' 형식의 파라미터로 검색하고자 하는 검색 조건을 넣는다. 따라서 검색 조건에 따라 URI의 파라미터가 변경될 것이고, URI 표기법에 맞게 호출된 조건에 따라 결과를 내려준다. 하지만 파라미터로 표현할 수 있는 표현의 한계가 있기 때문에 Request Body 검색 방법을 사용하는 것에 비해 사용에 대한 제약이 많다. 복잡한 질의를 작성하는 것이 불가능하다.

 

GET 127.0.0.1:9200/_search?q=regDts:20210120

 

 

 

Request Body 검색

Request Body 방식은 HTTP 요청시 Body에 검색할 컬럼과 검색어를 JSON 형태로 표현해서 전달하는 방식이다. Body에 표현되는 구문은 Query DSL 이라는 특별한 문법을 지원한다. URI 검색시에 제한됬던 복잡한 질의 검색이 가능하다. 엘라스틱서치가 제공하는 검색 API를 모두 활용하고자 한다면 URI 방법이 아닌 Request Body 검색 방법을 사용해야한다.

 

POST 127.0.0.1:9200/_search
{
  "query" : {

      "term" : {

          "regDts" : "20210120"

		}
	}
}

 

 

반응형

Designed by JB FACTORY