Amazon Timestream for InfluxDB의 다중 AZ 읽기 전용 복제본 클러스터 사용 - Amazon Timestream

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

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

Amazon Timestream for InfluxDB의 다중 AZ 읽기 전용 복제본 클러스터 사용

읽기 전용 복제본 클러스터 배포는 프라이머리 DB 인스턴스에 연결된 읽기 전용 복제본을 구성할 수 있는 Amazon Timestream for InfluxDB의 비동기식 배포 모드입니다. 읽기 전용 복제본 클러스터에는 동일한 AWS 리전내의 별도 가용 영역에 라이터 DB 인스턴스와 리더 DB 인스턴스가 있습니다. 읽기 전용 복제본 클러스터는 다중 AZ DB 인스턴스 배포와 비교했을 때 높은 가용성과 읽기 워크로드에 대한 증가된 용량을 제공합니다.

읽기 전용 복제본 클러스터의 인스턴스 클래스 가용성

읽기 전용 복제본 클러스터 배포는 일반 Timestream for InfluxDB 인스턴스와 동일한 인스턴스 유형에서 지원됩니다.

인스턴스 클래스 vCPU 메모리(GiB) 스토리지 유형 네트워크 대역폭(Gbps)
db.influx.medium 1 8 Influx IOPS 포함 10
db.influx.large 2 16 Influx IOPS 포함 10
db.influx.xlarge 4 32 Influx IOPS 포함 10
db.influx.2xlarge 8 64 Influx IOPS 포함 10
db.influx.4xlarge 16 128 Influx IOPS 포함 10
db.influx.8xlarge 32 256 Influx IOPS 포함 12
db.influx.12xlarge 48 384 Influx IOPS 포함 20
db.influx.16xlarge 64 512 Influx IOPS 포함 25
db.influx.24xlarge 96 768 Influx IOPS 포함 40

읽기 전용 복제본 클러스터 아키텍처

읽기 전용 복제본 클러스터를 사용하면 Amazon Timestream for InfluxDB는 InfluxData의 라이선스가 부여된 읽기 전용 복제본 추가 기능을 통해 라이터 DB 인스턴스에 대한 모든 쓰기를 모든 리더 DB 인스턴스에 자동으로 복제합니다. 이 복제는 비동기식이며 모든 쓰기는 라이터 노드에서 커밋되자마자 확인됩니다. 쓰기는 성공적인 쓰기로 간주되기 위해 모든 리더 노드의 확인을 필요로 하지 않습니다. 데이터가 라이터 DB 인스턴스에서 커밋되면 거의 즉시 읽기 전용 복제본 인스턴스에 복제됩니다. 복구할 수 없는 라이터 장애가 발생하는 경우 최소한 하나의 리더로 복제되지 않은 데이터는 모두 손실됩니다.

읽기 전용 복제본 인스턴스는 라이터 DB 인스턴스의 읽기 전용 사본입니다. 애플리케이션에서 읽기 전용 복제본으로 일부 또는 모든 쿼리를 라우팅하여 라이터 DB 인스턴스의 로드를 줄일 수 있습니다. 이렇게 하면 읽기 중심의 데이터베이스 워크로드에 대한 단일 DB 인스턴스의 용량 제한에서 벗어나 탄력적으로 스케일 아웃할 수 있습니다.

다음 다이어그램은 다른 가용 영역의 읽기 전용 복제본으로 복제되는 프라이머리 DB 인스턴스를 보여줍니다. 클라이언트는 기본 DB 인스턴스에 대한 읽기/쓰기 액세스 권한과 복제본에 대한 읽기 전용 액세스 권한을 가집니다.

가용 영역 A의 프라이머리 DB 인스턴스는 가용 영역 C의 읽기 전용 복제본 인스턴스에 비동기식으로 복제됩니다.

읽기 전용 복제본 클러스터의 파라미터 그룹

읽기 전용 복제본 클러스터에서 DB 파라미터 그룹은 읽기 전용 복제본 클러스터의 모든 DB 인스턴스에 적용되는 엔진 구성 값의 컨테이너 역할을 합니다. 기본 DB 파라미터 그룹은 DB 엔진과 DB 엔진 버전에 따라 설정됩니다. DB 파라미터 그룹의 설정은 클러스터의 모든 DB 인스턴스에 사용됩니다.

다중 AZ DB 읽기 전용 복제본에 대해 CreateDbClusterUpdateDbCluster를 사용하여 특정 DB 매개변수 그룹을 전달할 때는 storage-wal-max-write-delay가 최소 1시간으로 설정되어 있는지 확인합니다. DB 파라미터 그룹이 지정되지 않으면 storage-wal-max-write-delay는 기본적으로 1시간으로 설정됩니다.

읽기 전용 복제본 클러스터의 복제 지연

다중 Timestream for InfluxDB 읽기 전용 복제본 클러스터는 높은 쓰기 성능을 허용하지만 엔진 기반 비동기식 복제의 특성으로 인해 복제본 지연이 계속 발생할 수 있습니다. 이러한 지연은 장애 조치 시 잠재적인 데이터 손실로 이어질 수 있으므로 모니터링이 필수적입니다.

AWS Management Console 탐색 창에서 모든 지표를 선택하여 CloudWatch에서 복제본 지연을 추적할 수 있습니다. Timestream/InfluxDB를 선택한 다음 By DbCluster를 선택합니다. DbClusterName을 선택한 다음 DbReaderInstanceName을 선택합니다. 여기에는 모든 Timestream for InfluxDB 인스턴스에 대해 추적되는 일반적인 지표 세트(아래 목록 참조) 외에도 ReplicaLag가 밀리초 단위로 표시됩니다.

  • CPUUtilization

  • MemoryUtilization

  • DiskUtilization

  • ReplicaLag(복제본 인스턴스 모드 DB 인스턴스에만 해당)

복제본 지연의 일반적인 원인

일반적으로 복제본 지연은 쓰기 및 읽기 워크로드가 너무 높아 리더 DB 인스턴스가 트랜잭션을 효율적으로 적용할 수 없을 때 발생합니다. 다양한 워크로드로 인해 일시적 또는 지속적인 복제본 지연이 발생할 수 있습니다. 다음은 몇 가지 일반적인 원인의 예입니다.

  • 라이터 DB 인스턴스의 높은 쓰기 동시성 또는 대량 일괄 업데이트로 인해 리더 DB 인스턴스의 적용 프로세스가 뒤쳐집니다.

  • 하나 이상의 리더 DB 인스턴스의 리소스를 사용하는 대량 읽기 워크로드입니다. 느리거나 큰 쿼리를 실행하면 적용 프로세스에 영향이 있고 복제본 지연이 발생할 수 있습니다.

  • 데이터베이스가 커밋 순서를 유지해야 하기 때문에 대량의 데이터 또는 DDL 문을 수정하는 트랜잭션으로 인해 복제본 지연 시간이 일시적으로 증가하는 경우가 있습니다.

복제본 지연이 설정된 시간을 초과할 때 CloudWatch 경보를 생성하는 방법을 보여주는 자습서는 자습서: Amazon Timestream for InfluxDB에 대한 다중 AZ 클러스터 복제본 지연에 대한 Amazon CloudWatch 경보 생성 섹션을 참조하세요.

복제본 지연 완화

Timestream for InfluxDB 읽기 전용 복제본 클러스터의 경우 라이터 DB 인스턴스의 로드를 줄여 복제 지연을 완화할 수 있습니다.

가용성과 내구성

라이터 장애 발생 시 자동으로 읽기 인스턴스 중 하나로 장애 조치하여 쓰기 가용성을 우선시하도록 구성하거나, 장애 조치를 피하여 팁 데이터 손실을 최소화하도록 읽기 전용 복제본 클러스터를 구성할 수 있습니다. 팁 데이터는 리더 노드 중 하나 이상에 아직 복제되지 않은 데이터의 복제 지연을 나타냅니다(읽기 전용 복제본 클러스터의 복제 지연 참조). 읽기 전용 복제본 클러스터의 기본 및 권장 동작은 작성자 장애 발생 시 자동으로 장애 조치하는 것입니다. 그러나 사용 사례에서 팁 데이터 손실이 쓰기 가용성보다 더 중요한 경우 클러스터를 업데이트하여 기본값을 재정의할 수 있습니다.

읽기 전용 복제본 클러스터는 클러스터의 모든 DB 인스턴스가 최소 2개의 가용 영역에 배포되도록 하여 가용 영역 중단 시 쓰기 가용성과 데이터 내구성을 향상시킵니다.