본문 바로가기
기타

검색 시작

2020. 12. 20.
반응형

검색 시작

Elasticsearch 인덱스로 일부 데이터를 수집 한 후에는 요청을 _search엔드 포인트 로 전송하여 검색 할 수 있습니다 . 전체 검색 기능에 액세스하려면 Elasticsearch Query DSL을 사용하여 요청 본문에 검색 기준을 지정합니다. 요청 URI에서 검색하려는 인덱스의 이름을 지정합니다.

예를 들어 다음 요청 bank 은 계정 번호별로 정렬 된 색인의 모든 문서를 검색합니다 .

 

기본적으로 hits응답 섹션에는 검색 기준과 일치하는 처음 10 개의 문서가 포함됩니다.

 

응답은 검색 요청에 대한 다음 정보도 제공합니다.

  • took – Elasticsearch가 쿼리를 실행하는 데 걸린 시간 (밀리 초)
  • timed_out – 검색 요청 시간이 초과되었는지 여부
  • _shards – 검색된 샤드 수와 성공, 실패 또는 건너 뛴 샤드 수에 대한 분석.
  • max_score – 가장 관련성이 높은 문서의 점수
  • hits.total.value -몇 개의 일치하는 문서가 발견되었는지
  • hits.sort -문서의 정렬 위치 (관련성 점수로 정렬하지 않은 경우)
  • hits._score-문서의 관련성 점수 (사용시 적용되지 않음 match_all)

각 검색 요청은 자체 포함됩니다. Elasticsearch는 요청 전반에 걸쳐 어떠한 상태 정보도 유지하지 않습니다. 검색 적중을 페이지로 이동하려면 요청에 from및 size매개 변수를 지정하십시오 .

예를 들어 다음 요청은 10에서 19까지의 조회를 가져옵니다.

 

기본 검색 요청을 제출하는 방법을 살펴 보았으므로 이제 match_all.

필드 내에서 특정 용어를 검색하려면 match쿼리를 사용할 수 있습니다 . 예를 들어, 다음과 같은 요청은 검색 address주소가 포함 된 고객을 찾을 수 필드 mill또는 lane:

 

개별 용어를 일치시키는 대신 구문 검색을 수행하려면 match_phrase대신을 사용 합니다 match. 예를 들어 다음 요청은 구가 포함 된 주소와 만 일치합니다 mill lane.

 

부울 쿼리의  must, should및 must_not요소를 쿼리 절이라고합니다. 문서가 각 must또는 should절의 기준을 얼마나 잘 충족하는지 는 문서의 관련성 점수에 기여합니다 . 점수가 높을수록 문서가 검색 기준과 더 잘 일치합니다. 기본적으로 Elasticsearch는 이러한 관련성 점수에 따라 순위가 매겨진 문서를 반환합니다.

must_not절의 기준은 필터 로 처리됩니다 . 문서가 결과에 포함되는지 여부에 영향을 주지만 문서 점수 매기기 방법에는 영향을주지 않습니다. 구조화 된 데이터를 기반으로 문서를 포함하거나 제외하도록 임의 필터를 명시 적으로 지정할 수도 있습니다.

예를 들어 다음 요청은 범위 필터를 사용하여 잔액이 $ 20,000에서 $ 30,000 (포함) 사이 인 계정으로 결과를 제한합니다.

 

반응형

'기타' 카테고리의 다른 글

Elasticsearch 설치  (0) 2020.12.20
집계로 결과 분석  (0) 2020.12.20
일부 문서 색인  (0) 2020.12.20
Elasticsearch 시작 및 실행  (0) 2020.12.20
Elasticsearch 시작하기  (0) 2020.12.20

댓글