Amazon OpenSearch 서비스의 특정 시점 검색 - 아마존 OpenSearch 서비스

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon OpenSearch 서비스의 특정 시점 검색

PIT (특정 시점) 는 고정된 데이터 세트에 대해 다양한 쿼리를 실행할 수 있는 검색 유형입니다. 문서가 계속해서 인덱싱, 업데이트 및 삭제되기 때문에 서로 다른 시점에 동일한 인덱스에서 동일한 쿼리를 실행하면 다른 결과가 나타나는 경우가 일반적입니다. PIT를 사용하면 데이터 세트의 상수 상태를 기준으로 쿼리할 수 있습니다.

PIT 검색의 주요 용도는 search_after 기능과 결합하는 것입니다. 이는 시간이 고정된 데이터 집합에서 OpenSearch 작동하고 쿼리에 바인딩되지 않으며 앞뒤로 일관된 페이지 매김을 지원하기 때문에 특히 딥 페이지 매김의 경우 선호되는 페이지 매김 방법입니다. 버전 2.5를 실행하는 도메인에서 PIT를 사용할 수 있습니다. OpenSearch

참고

이 주제에서는 PIT에 대한 개요와 자체 관리형 OpenSearch 클러스터가 아닌 관리형 Amazon OpenSearch Service 도메인에서 PIT를 사용할 때 고려해야 할 몇 가지 사항을 제공합니다. 포괄적인 API 참조를 포함하여 PIT에 대한 전체 문서를 보려면 오픈 소스 OpenSearch 설명서의 특정 시점을 참조하십시오.

고려 사항

PIT 검색을 구성할 때 다음 사항을 고려하세요.

  • OpenSearch 버전 2.3을 실행하는 도메인에서 업그레이드하고 PIT 작업에 대한 세밀한 액세스 제어가 필요한 경우 해당 작업과 역할을 수동으로 추가해야 합니다.

  • PIT에 대한 복원성이 없습니다. 노드 재부팅, 노드 종료, 블루/그린 배포, OpenSearch 프로세스 재시작으로 인해 모든 PIT 데이터가 손실됩니다.

  • 블루/그린 배포 중에 샤드가 재배치되는 경우 라이브 데이터 세그먼트만 새 노드로 전송됩니다. PIT가 보유한 샤드 세그먼트(단독 및 라이브 데이터와 공유된 샤드 세그먼트 모두)는 이전 노드에 그대로 남아 있습니다.

  • PIT 검색은 현재 비동기 검색에서는 작동하지 않습니다.

PIT 생성

PIT 쿼리를 실행하려면 다음 형식을 사용하여 HTTP 요청을 로 _search/point_in_time 보내십시오.

POST opensearch-domain/my-index/_search/point_in_time?keep_alive=time

다음 PIT 옵션을 지정할 수 있습니다.

옵션 설명 기본값 필수
keep_alive

PIT를 보존하는 시간입니다. 검색 요청으로 PIT에 액세스할 때마다 PIT 수명이 keep_alive 파라미터와 동일한 시간만큼 연장됩니다. 이 쿼리 파라미터는 PIT를 생성할 때는 필수이지만 검색 요청에서는 선택 사항입니다.

preference

검색을 수행하는 데 사용되는 노드 또는 샤드를 지정하는 문자열입니다.

무작위 아니요
routing 검색 요청을 특정 샤드로 라우팅하도록 지정하는 문자열입니다. 문서의 _id 아니요
expand_wildcards 와일드카드 패턴과 일치할 수 있는 인덱스 유형을 지정하는 문자열입니다. 쉼표로 분리된 값을 지원합니다. 유효한 값은 다음과 같습니다.
  • all: 숨겨진 인덱스 또는 데이터 스트림을 포함하여 모든 인덱스 또는 데이터 스트림을 일치시킵니다.

  • open: 열려 있거나 숨겨지지 않은 인덱스 또는 숨겨지지 않은 데이터 스트림을 일치시킵니다.

  • closed: 닫혀 있고 숨겨지지 않은 인덱스 또는 숨겨지지 않은 데이터 스트림을 일치시킵니다.

  • hidden: 숨겨진 인덱스 또는 데이터 스트림을 일치시킵니다. 개방형, 폐쇄형 또는 개방형 및 폐쇄형 모두와 결합해야 합니다.

  • none: 와일드카드 패턴은 허용되지 않습니다.

open 아니요
allow_partial_pit_creation 부분 오류가 있는 PIT를 생성할지 여부를 지정하는 부울입니다. true 아니요

샘플 응답

{ "pit_id": "o463QQEPbXktaW5kZXgtMDAwMDAxFnNOWU43ckt3U3IyaFVpbGE1UWEtMncAFjFyeXBsRGJmVFM2RTB6eVg1aVVqQncAAAAAAAAAAAIWcDVrM3ZIX0pRNS1XejE5YXRPRFhzUQEWc05ZTjdyS3dTcjJoVWlsYTVRYS0ydwAA", "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "creation_time": 1658146050064 }

PIT를 생성하면 응답으로 PIT ID를 받게 됩니다. PIT로 검색을 수행하는 데 사용하는 ID입니다.

특정 시점 권한

PIT는 세분화된 액세스 제어를 지원합니다. OpenSearch 버전 2.5 도메인으로 업그레이드하고 세부적인 액세스 제어가 필요한 경우 다음 권한이 있는 역할을 수동으로 생성해야 합니다.

# Allows users to use all point in time search search functionality point_in_time_full_access: reserved: true index_permissions: - index_patterns: - '*' allowed_actions: - "indices:data/read/point_in_time/create" - "indices:data/read/point_in_time/delete" - "indices:data/read/point_in_time/readall" - "indices:data/read/search" - "indices:monitor/point_in_time/segments" # Allows users to use point in time search search functionality for specific index # All type operations like list all PITs, delete all PITs are not supported in this case point_in_time_index_access: reserved: true index_permissions: - index_patterns: - 'my-index-1' allowed_actions: - "indices:data/read/point_in_time/create" - "indices:data/read/point_in_time/delete" - "indices:data/read/search" - "indices:monitor/point_in_time/segments"

OpenSearch 버전 2.5 이상이 설치된 도메인의 경우 기본 제공 point_in_time_full_access 역할을 사용할 수 있습니다. 자세한 내용은 OpenSearch 설명서의 보안 모델을 참조하십시오.

PIT 설정

OpenSearch _cluster/settingsAPI를 사용하여 사용 가능한 모든 PIT 설정을 변경할 수 있습니다. OpenSearch 서비스에서는 현재 설정을 수정할 수 없습니다.

클러스터 간 검색

다음과 같은 사소한 제한 사항을 제외하고 PIT를 생성하고, PIT ID로 검색하고, PIT를 나열하고, 클러스터 전체에서 PIT를 삭제할 수 있습니다.

  • 소스 도메인에서만 PIT를 모두 나열하고 삭제할 수 있습니다.

  • 클러스터 간 검색 쿼리의 일부로 네트워크 왕복을 최소화할 수 없습니다.

자세한 정보는 Amazon OpenSearch 서비스의 클러스터 간 검색을 참조하세요.

UltraWarm

UltraWarm 색인을 사용한 PIT 검색은 계속 작동합니다. 자세한 정보는 UltraWarm 아마존 OpenSearch 서비스용 스토리지을 참조하세요.

참고

에서 PIT 검색 통계를 모니터링할 수 있습니다. CloudWatch 전체 지표 목록은 특정 시점 지표 섹션을 참조하세요.