검색 시작
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 |
댓글