대상으로서 InfluxDB의 Timestream - Amazon Timestream

Amazon Timestream for LiveAnalytics와 유사한 기능을 사용하려면 Amazon Timestream for InfluxDB를 고려하세요. 실시간 분석을 위해 간소화된 데이터 수집 및 한 자릿수 밀리초 쿼리 응답 시간을 제공합니다. 여기에서 자세히 알아보세요.

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

대상으로서 InfluxDB의 Timestream

Amazon Timestream for InfluxDB는 실시간 애플리케이션에 오픈 소스 InfluxDB APIs를 AWS 사용하는의 관리형 시계열 데이터베이스 서비스입니다. 간편한 설정, 작업 및 크기 조정을 제공하여 한 자릿수 밀리초의 응답 시간으로 쿼리를 제공합니다.

Timestream for InfluxDB가 사용 사례에 적합한 마이그레이션 대상인지 확인하는 첫 번째 단계는 Timestream for LiveAnalytics 테이블의 카디널리티를 결정하는 것입니다. LiveAnalytics용 Timestream에서 테이블 카디널리티를 계산하는 스크립트를 개발했습니다. 이 계산은 다음 두 가지 목적으로 사용됩니다.

  1. 카디널리티가 1천만 미만인지 확인하여 Timestream for InfluxDB가 사용 사례를 처리할 수 있는지 확인하는 데 도움이 됩니다.

  2. 사용할 InfluxDB 인스턴스 유형을 결정하는 데 도움이 됩니다.

InfluxDB의 카디널리티는 InfluxDB 버킷의 고유한 측정, 태그필드 키 조합 수입니다. 권장 한도를 초과하면 쿼리 성능이 저하되고 메모리 소비가 증가할 수 있는 방법을 알아보려면 Timestream for InfluxDB의 카디널리티 관리 설명서를 참조하세요. 인스턴스 선택을 완료하기 전에 대표적인 데이터 샘플과 비교하여 예상 쿼리 패턴을 벤치마킹하여 마이그레이션 후에도 쿼리가 계속 작동하는지 확인합니다. Timestream for LiveAnalytics와 다르게 작동할 수 있는 메모리 집약적인 집계 쿼리에 주의하십시오. Timestream for LiveAnalytics에서 마이그레이션할 때는 성능 및 리소스 요구 사항에 직접적인 영향을 미치므로 데이터세트의 카디널리티를 기반으로 InfluxDB 인스턴스 사양을 신중하게 선택합니다. 데이터 카디널리티가 1천만 개를 초과하는 경우 다른 대상을 고려하는 것이 좋습니다.

카디널리티 계산 스크립트 개요

카디널리티 계산 스크립트는 Timestream for LiveAnalytics 테이블의 카디널리티를 계산합니다. 카디널리티가 1천만 미만인 경우 스크립트는 Timestream for InfluxDB 인스턴스 유형을 권장합니다. 기본 스키마 매핑을 사용하여 차원과 치수 이름의 총 고유 조합을 계산하여 카디널리티를 계산합니다. 올바른 줄의 프로토콜 태그(LiveAnalytics용 Timestream의 차원과 동일)를 선택하면 자동으로 데이터를 인덱싱하고 태그를 사용하여 데이터를 효율적으로 필터링할 수 있습니다. 스크립트는 카디널리티를 계산할 때 특정 차원을 제외하는 옵션도 제공합니다. 사례에 해당하는 경우 SQL 쿼리에서 데이터를 필터링하기 위해 특정 차원을 사용하지 않는 경우(특히 이를 조건자로 사용하지 않는 경우) 카디널리티 계산에서 이러한 차원을 제외할 수 있습니다. 나중에 마이그레이션의 다음 단계에서 필드(Timestream for LiveAnalytics의 측정값과 동일)로 수집할 수 있습니다.

사전 조건 및 설치

카디널리티 스크립트의 README에서 사전 조건 섹션 및 설치를 참조하세요.

기본 사용량

테이블 example_table의 카디널리티를 확인하기 위해 데이터베이스 example_database에서 스크립트를 다음과 같은 방식으로 사용할 수 있습니다.

python3 cardinality.py \ --table-name example_table \ --database-name example_database

이렇게 하면 다음과 같은 출력이 생성됩니다.

Cardinality of "example_database"."example_table": 160 Your recommended Timestream for InfluxDB type is: db.influx.medium

권장 사항

스크립트는 전체 테이블을 자동으로 스캔하여 카디널리티를 계산하는 동시에 최적의 쿼리 실행을 위한 시간 필터 옵션을 제공합니다. 데이터에 일관된 차원이 포함되고 전체 테이블에서 고유한 차원 변형을 분석하면 특정 시간 범위를 분석하는 것과 유사한 결과를 얻을 때 시간 필터를 구현하는 것이 좋습니다. 이 접근 방식은 효율적이고 성능이 뛰어난 쿼리 실행을 보장합니다.

자세한 내용은 카디널리티 스크립트의 README를 참조하세요.