데이터 스트림을 사용하여 Amazon OpenSearch Service에서 시계열 데이터 관리 - Amazon OpenSearch 서비스

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

데이터 스트림을 사용하여 Amazon OpenSearch Service에서 시계열 데이터 관리

시계열 데이터를 관리하는 일반적인 워크플로에는 롤오버 인덱스 별칭 생성, 쓰기 인덱스 정의, 백업 인덱스에 대한 공통 매핑 및 설정 정의와 같은 여러 단계가 포함됩니다.

Amazon OpenSearch Service의 데이터 스트림은 이러한 초기 설정 프로세스를 간소화하는 데 도움이 됩니다. 보통 본질적으로 추가 전용인 애플리케이션 로그와 같은 시간 기반 데이터에 대해서는 데이터 스트림이 즉시 작동합니다.

데이터 스트림을 사용하려면 OpenSearch 버전 1.0 이상이 필요합니다.

참고

이 설명서에서는 Amazon OpenSearch Service 도메인에서 데이터 스트림을 시작하는 데 도움이 되는 기본적인 단계를 제공합니다. 포괄적인 설명서를 보려면 OpenSearch 설명서의 Data streams를 참조하세요.

데이터 스트림 시작하기

데이터 스트림은 내부적으로 여러 백업 인덱스로 구성됩니다. 검색 요청은 모든 백업 인덱스로 라우팅되고 인덱싱 요청은 최신 쓰기 인덱스로 라우팅됩니다.

1단계: 인덱스 템플릿 생성

데이터 스트림을 생성하려면 먼저 인덱스 집합을 데이터 스트림으로 구성하는 인덱스 템플릿을 생성해야 합니다. data_stream 객체는 데이터 스트림이며 일반 인덱스 템플릿이 아니라는 것을 나타냅니다. 인덱스 패턴은 데이터 스트림의 이름과 일치합니다:

PUT _index_template/logs-template { "index_patterns": [ "my-data-stream", "logs-*" ], "data_stream": {}, "priority": 100 }

이 경우 수집된 각 문서에는 @timestamp 필드가 있어야 합니다. 사용자 지정 타임스탬프 필드를 data_stream 객체의 속성으로 정의할 수도 있습니다.

PUT _index_template/logs-template { "index_patterns": "my-data-stream", "data_stream": { "timestamp_field": { "name": "request_time" } } }

2단계: 데이터 스트림 생성

인덱스 템플릿을 생성한 후에는 데이터 스트림을 생성하지 않고 직접 데이터 수집을 시작할 수 있습니다.

data_stream 객체와 일치하는 인덱스 템플릿이 있기 때문에 OpenSearch가 자동으로 데이터 스트림을 생성합니다.

POST logs-staging/_doc { "message": "login attempt failed", "@timestamp": "2013-03-01T00:00:00" }

3단계: 데이터 스트림에 데이터 수집

데이터를 데이터 스트림으로 수집하기 위해 일반 인덱싱 API를 사용할 수 있습니다. 인덱싱하는 모든 문서에 타임스탬프 필드가 있는지 확인합니다. 타임스탬프 필드가 없는 문서를 수집하려고 하면 오류 메시지가 표시됩니다.

POST logs-redis/_doc { "message": "login attempt", "@timestamp": "2013-03-01T00:00:00" }

4단계: 데이터 스트림 검색

일반 인덱스 또는 인덱스 별칭을 검색하는 것처럼 데이터 스트림을 검색할 수 있습니다. 검색 작업은 모든 백업 인덱스(스트림에 존재하는 모든 데이터) 에 적용됩니다.

GET logs-redis/_search { "query": { "match": { "message": "login" } } }

5단계: 데이터 스트림 롤오버

인덱스 상태 관리(ISM) 정책을 설정하여 데이터 스트림에 대한 롤오버 프로세스를 자동화할 수 있습니다. ISM 정책은 생성 시 백업 인덱스에 적용됩니다. 정책을 데이터 스트림에 연결하면 해당 데이터 스트림의 향후 백업 인덱스에만 영향을 줍니다. 또한 ISM 정책이 백업 인덱스에서 이 정보를 유추하기 때문에 rollover_alias 설정을 제공할 필요가 없습니다.

참고

백업 인덱스를 콜드 스토리지로 롤오버하면 OpenSearch가 데이터 스트림에서 이 인덱스를 제거합니다. 인덱스를 UltraWarm으로 다시 이동하더라도 인덱스는 독립적으로 유지되며 원래 데이터 스트림의 일부가 아닙니다. 데이터 스트림에서 인덱스를 제거한 후 스트림을 검색해도 인덱스에서 데이터가 반환되지 않습니다.

주의

데이터 스트림의 쓰기 인덱스는 콜드 스토리지로 마이그레이션할 수 없습니다. 데이터 스트림의 데이터를 콜드 스토리지로 마이그레이션하려면 마이그레이션하기 전에 데이터 스트림을 롤오버해야 합니다.

6단계: OpenSearch Dashboards에서 데이터 스트림 관리

OpenSearch Dashboards에서 데이터 스트림을 관리하려면 OpenSearch Dashboards를 열고 인덱스 관리(Index Management)를 선택한 다음 인덱스(Indices) 또는 정책 관리형 인덱스(Policy managed indices)를 선택합니다.

7단계: 데이터 스트림 삭제

삭제 작업은 먼저 데이터 스트림의 백업 인덱스를 삭제한 다음 데이터 스트림 자체를 삭제합니다.

데이터 스트림과 숨겨진 모든 백업 인덱스를 삭제하려면 다음을 수행합니다.

DELETE _data_stream/name_of_data_stream