Amazon Keyspaces 자동 크기 조정을 통해 처리 용량을 자동으로 관리합니다. - Amazon Keyspaces(Apache Cassandra용)

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

Amazon Keyspaces 자동 크기 조정을 통해 처리 용량을 자동으로 관리합니다.

대부분의 데이터베이스 워크로드는 원래 주기적으로 반복되거나 미리 예측하기가 어렵습니다. 낮 시간 동안에는 대부분의 사용자가 활성 상태인 소셜 네트워킹 앱을 예로 들어 보겠습니다. 이러한 데이터베이스에서는 주간 활동을 처리할 수 있어야 하지만, 밤에는 동일한 수준의 처리량이 필요 없습니다.

빠른 속도로 도입 중인 새로운 모바일 게임 앱을 또 다른 예로 들 수 있습니다. 이 게임의 인기가 높아지면 사용 가능한 데이터베이스 리소스 양을 초과하여 성능이 느려지고 고객 불만이 발생할 것입니다. 이러한 종류의 워크로드는 대개 사용량 변화에 따라 수동 개입을 통해 데이터베이스 리소스의 규모를 늘리거나 줄여야 합니다.

Amazon Keyspaces(Apache Cassandra용)는 실제 애플리케이션 트래픽에 따라 처리량 용량을 자동으로 조정하여 가변 워크로드에 대한 처리량 용량을 효율적으로 프로비저닝할 수 있도록 지원합니다. Amazon Keyspaces는 Application Auto Scaling 서비스를 사용하여 자동으로 테이블의 읽기 및 쓰기 용량을 늘리거나 줄입니다. Application Auto Scaling에 대한 자세한 내용은 Application Auto Scaling 사용 설명서를 참조하세요.

참고

Amazon Keyspaces Auto Scaling의 사용을 신속하게 시작하려면 콘솔을 통한 Amazon Keyspaces Auto Scaling 정책 관리 섹션을 참조하세요. 카산드라 쿼리 언어 (CQL) 를 사용하여 Amazon Keyspaces 규모 조정 정책을 관리하려면 을 참조하십시오. 카산드라 쿼리 언어 (CQL) 를 사용한 Amazon Keyspaces 오토 스케일링 관리 CLI를 사용하여 Amazon Keyspaces 조정 정책을 관리하는 방법을 알아보려면 을 참조하십시오. CLI를 사용한 Amazon Keyspaces 규모 조정 정책 관리

Amazon Keyspaces Auto Scaling 작동 방식

아래 그림에는 Amazon Keyspaces Auto Scaling이 테이블의 처리량 용량을 관리하는 방법이 간단히 소개되어 있습니다.

사용자가 Amazon Keyspaces 테이블을 변경할 때 관련된 다양한 서비스를 보여주는 다이어그램입니다. 서비스로는 Amazon CloudWatch, Amazon SNS, Application Auto Scaling이 있습니다. Application Auto Scaling은 ALTER TABLE 문을 발행하여 사용자의 읽기 또는 쓰기 사용량에 따라 용량을 변경합니다.

테이블에 대해 Auto Scaling을 활성화하기 위해 규모 조정 정책을 만듭니다. 이 규모 조정 정책을 통해 읽기 용량이나 쓰기 용량(또는 둘 다)을 조정할 것인지 여부와 테이블에 대해 할당된 용량 단위의 최댓값 및 최솟값 설정을 지정할 수 있습니다.

규모 조정 정책은 목표 사용률도 정의합니다. 목표 사용률이란 특정 시점에 프로비저닝된 용량 단위에 대한 소비된 용량 단위의 비율을 백분율로 나타낸 값입니다. Auto Scaling은 목표 추적 알고리즘을 사용하여 실제 워크로드에 따라 테이블의 프로비저닝된 처리량을 확대 또는 축소합니다. 이렇게 하면 실제 용량 사용률을 목표 사용률과 비슷하게 유지할 수 있습니다.

읽기 및 쓰기 용량에 대해 20%와 90% 사이에서 Auto Scaling 목표 사용률 값을 설정할 수 있습니다. 기본 목표 사용률은 70% 입니다. 트래픽이 빠르게 변하고 용량을 더 빨리 스케일 업하려는 경우 목표 사용률을 낮게 설정할 수 있습니다. 애플리케이션 트래픽이 더 느리게 변하고 처리량 비용을 줄이려는 경우 목표 사용률을 더 높게 설정할 수도 있습니다.

조정 정책에 대한 자세한 내용은 Application Auto Scaling 사용 설명서의 Application Auto Scaling에 대한 대상 추적 조정 정책을 참조하십시오.

조정 정책을 생성하면 Amazon Keyspaces는 사용자를 대신하여 두 쌍의 Amazon CloudWatch 경보를 생성합니다. 각 쌍은 프로비저닝되고 사용된 처리량 설정의 상한값과 하한값을 나타냅니다. 이러한 CloudWatch 경보는 테이블의 실제 사용률이 일정 기간 동안 목표 사용률에서 벗어날 때 트리거됩니다. CloudWatchAmazon에 대해 자세히 알아보려면 Amazon CloudWatch 사용 설명서를 참조하십시오.

CloudWatch 알람 중 하나가 트리거되면 Amazon Simple Notification Service (Amazon SNS) 에서 알림을 보냅니다 (활성화한 경우). 그러면 CloudWatch 경보가 Application Auto Scaling을 호출하여 조정 정책을 평가합니다. 그러면 Amazon Keyspaces에 Alt Table 요청이 전송되어 테이블의 프로비저닝된 용량을 적절히 확장하거나 축소합니다. Amazon SNS 알림에 대한 자세한 내용은 Amazon SNS 알림 설정을 참조하세요.

Amazon Keyspaces는 테이블의 프로비저닝된 처리량 용량이 목표 사용률에 근접하도록 동적으로 확장하거나 축소함으로써 Alter Table 요청을 처리합니다.

참고

Amazon Keyspaces Auto Scaling은 실제 워크로드가 몇 분 동안 지속적으로 상승 (또는 감소) 상태를 유지할 때만 프로비저닝된 처리량 설정을 수정합니다. 의 목표 추적 알고리즘은 목표 사용률을 장기적으로 사용자가 선택한 값 안팎으로 유지되도록 합니다. 짧은 기간 동안 갑자기 급증하는 활동은 테이블에 기본 제공되는 버스트 용량으로 처리합니다.

멀티 리전 테이블에서 Auto Scaling이 작동하는 방식

프로비저닝된 용량 모드에서 모든 멀티 리전 테이블의 모든 테이블 복제본에 대해 항상 충분한 읽기 및 쓰기 용량을 확보하려면 Amazon Keyspaces Auto Scaling을 구성하는 것이 좋습니다. AWS 리전

Auto Scaling과 함께 프로비저닝 모드에서 멀티 리전 테이블을 사용하는 경우 단일 테이블 복제본에 대해 Auto Scaling을 비활성화할 수 없습니다. 하지만 테이블의 읽기 전용 Auto Scaling 설정을 지역별로 조정할 수 있습니다. 예를 들어 테이블이 복제되는 각 지역에 대해 서로 다른 읽기 용량 및 읽기 Auto Scaling 설정을 지정할 수 있습니다.

지정된 리전의 테이블 복제본에 대해 구성한 읽기 Auto Scaling 설정이 테이블의 일반 Auto Scaling 설정을 덮어씁니다. 하지만 모든 지역에서 쓰기를 복제하기에 충분한 용량을 확보하려면 모든 테이블 복제본에서 쓰기 용량이 동기화된 상태로 유지되어야 합니다.

Amazon Keyspaces Auto Scaling은 해당 지역의 사용량을 AWS 리전 기반으로 각 테이블의 프로비저닝된 용량을 독립적으로 업데이트합니다. 따라서 Auto Scaling이 활성화된 경우 다중 지역 테이블에 대한 각 지역의 프로비저닝 용량이 다를 수 있습니다.

Amazon Keyspaces 콘솔, AWS CLI API 또는 CQL을 사용하여 멀티 리전 테이블 및 해당 복제본의 오토 스케일링 설정을 구성할 수 있습니다. 다중 지역 테이블의 Auto Scaling 설정을 생성하고 업데이트하는 방법에 대한 자세한 내용은 을 참조하십시오다중 리전 복제 사용 방법.

참고

다중 리전 테이블에 자동 크기 조정을 사용하는 경우 항상 Amazon Keyspaces API 작업을 사용하여 자동 조정 설정을 구성해야 합니다. Application Auto Scaling API 작업을 직접 사용하여 Auto Scaling 설정을 구성하는 경우 다중 지역 테이블을 지정할 수 없습니다. AWS 리전 이로 인해 구성이 지원되지 않을 수 있습니다.

사용 노트

Amazon Keyspaces Auto Scaling을 사용하려면 먼저 다음 내용을 이해해야 합니다.

  • Amazon Keyspaces Auto Scaling은 Auto Scaling 정책에 따라 필요한 만큼 자주 읽기 용량이나 쓰기 용량을 늘릴 수 있습니다. 모든 Amazon Keyspaces 할당량은 Amazon Keyspaces(Apache Cassandra용)에 대한 할당량에서 설명한 것처럼 효력이 유지됩니다.

  • Amazon Keyspaces Auto Scaling은 프로비저닝된 처리량 설정을 사용자가 수동으로 수정하는 것도 허용합니다. 이러한 수동 조정은 조정 정책에 연결된 기존 CloudWatch 경보에는 영향을 미치지 않습니다.

  • 콘솔을 사용하여 프로비저닝된 처리량 용량이 있는 테이블을 생성하는 경우 Amazon Keyspaces Auto Scaling이 기본적으로 활성화됩니다. 언제든지 Auto Scaling 설정을 변경할 수 있습니다. 자세한 정보는 콘솔을 통한 Amazon Keyspaces Auto Scaling 정책 관리을 참조하세요.

  • 를 AWS CloudFormation 사용하여 조정 정책을 생성하는 경우 스택이 스택 템플릿과 AWS CloudFormation 동기화되도록 조정 정책을 관리해야 합니다. Amazon Keyspace에서 조정 정책을 변경하면 스택이 재설정될 때 AWS CloudFormation 스택 템플릿의 원래 값으로 해당 정책을 덮어씁니다.

  • Amazon Keyspaces 자동 크기 조정을 모니터링하는 CloudTrail 데 사용하는 경우 구성 검증 프로세스의 일부로 Application Auto Scaling에서 이루어진 호출에 대한 알림이 표시될 수 있습니다. 이러한 알림을 필터링하려면 이러한 유효성 검사를 위한 application-autoscaling.amazonaws.com을 포함하는 invokedBy 필드를 사용합니다.