Gerencie a capacidade de processamento automaticamente com o escalonamento automático do Amazon Keyspaces - Amazon Keyspaces (para Apache Cassandra)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerencie a capacidade de processamento automaticamente com o escalonamento automático do Amazon Keyspaces

Muitas cargas de trabalho de banco de dados são cíclicas por natureza ou são difíceis de prever com antecedência. Por exemplo, considere um aplicativo de rede social na qual a maioria dos usuários está ativa durante o horário diurno. O banco de dados deve ser capaz de lidar com a atividade durante o dia, mas não há necessidade dos mesmos níveis de throughput à noite.

Outro exemplo pode ser um novo aplicativo de jogos para celular que está passando por uma rápida adoção. Se o jogo se tornar muito popular, talvez ele exceda os recursos de banco de dados disponíveis, podendo resultar em desempenho lento e clientes insatisfeitos. Esses tipos de cargas de trabalho muitas vezes exigem intervenção manual para dimensionar recursos de banco de dados, aumentando-os ou diminuindo-os em resposta a diferentes níveis de uso.

O Amazon Keyspaces (para Apache Cassandra) ajuda você a provisionar a capacidade de throughput de forma eficiente para workloads variáveis, ajustando automaticamente a capacidade de throughput em resposta ao tráfego real do aplicativo. O Amazon Keyspaces usa o serviço Application Auto Scaling para aumentar e diminuir a capacidade de leitura e gravação de uma tabela por você. Para obter mais informações sobre o Application Auto Scaling, consulte o Guia do usuário do Application Auto Scaling.

nota

Para começar a trabalhar rapidamente com o ajuste de escala automático do Amazon Keyspaces, consulte Configure e atualize as políticas de escalabilidade automática do Amazon Keyspaces.

Como funciona o ajuste de escala automático do Amazon Keyspaces

O diagrama a seguir fornece uma visão geral de alto nível de como o ajuste de escala automático do Amazon Keyspaces gerencia a capacidade de throughput de uma tabela.

Um diagrama mostrando os diferentes serviços envolvidos quando um usuário faz uma alteração em uma tabela do Amazon Keyspaces. Os serviços são Amazon CloudWatchSNS, Amazon e Application Auto Scaling, que emite a ALTER TABLE declaração para alterar a capacidade com base no uso de leitura ou gravação dos usuários.

Para habilitar o ajuste de escala automático para uma tabela, você cria uma política de escalabilidade. A política de escalabilidade especifica se você deseja escalar a capacidade de leitura ou a capacidade de gravação (ou ambas), bem como as configurações mínimas e máximas de unidades de capacidade provisionadas para a tabela.

A política de escalabilidade também define uma meta de utilização. A utilização pretendida é a proporção entre unidades de capacidade consumidas e unidades de capacidade provisionadas em um dado momento, expressa como um percentual. O ajuste de escala automático usa um algoritmo de rastreamento para ajustar o throughput provisionado da tabela para cima ou para baixo em resposta a workloads reais. Isso é feito para que a utilização real da capacidade permaneça igual ou próxima à sua meta de utilização.

É possível definir os valores de utilização do destino de ajuste de escala automático entre 20% e 90% como sua capacidade de gravação e leitura. A meta padrão de taxa de utilização é de 70 por cento. Você pode definir a meta de utilização como uma porcentagem menor se o tráfego mudar rapidamente e quiser que a capacidade comece a aumentar mais cedo. Você também pode definir a taxa de utilização desejada para uma taxa mais alta se o tráfego do aplicativo mudar mais lentamente e você quiser reduzir o custo do throughput.

Para obter mais informações sobre políticas de escalabilidade, consulte Políticas de escalabilidade de rastreamento de metas para Application Auto Scaling no Guia do Usuário do Application Auto Scaling.

Quando você cria uma política de escalabilidade, o Amazon Keyspaces cria dois pares de alarmes da CloudWatch Amazon em seu nome. Cada par representa seus limites superiores e inferiores para configurações de throughput provisionado e consumido. Esses CloudWatch alarmes são acionados quando a utilização real da tabela se desvia da sua meta de utilização por um longo período de tempo. Para saber mais sobre a Amazon CloudWatch, consulte o Guia CloudWatch do usuário da Amazon.

Quando um dos CloudWatch alarmes é acionado, o Amazon Simple Notification Service (AmazonSNS) envia uma notificação (se você a tiver ativado). O CloudWatch alarme então invoca o Application Auto Scaling para avaliar sua política de escalabilidade. Isso, por sua vez, emite uma solicitação Alter Table para o Amazon Keyspaces para ajustar a capacidade provisionada da tabela para cima ou para baixo conforme apropriado. Para saber mais sobre SNS as notificações da Amazon, consulte Configurar SNS notificações da Amazon.

O Amazon Keyspaces processa a solicitação de alteração da tabela, aumentando (ou diminuindo) a capacidade de throughput provisionado da tabela de forma que ela se aproxime da sua utilização prevista.

nota

O escalonamento automático do Amazon Keyspaces modifica as configurações de taxa de transferência provisionada somente quando a carga de trabalho real permanece elevada (ou deprimida) por um período sustentado de vários minutos. O algoritmo de rastreamento previsto do procura manter a utilização prevista em ou perto do seu valor escolhido em longo prazo. Picos de atividade súbitos de curta duração são acomodados pela capacidade de expansão interna da tabela.

Como o escalonamento automático funciona para tabelas multirregionais

Para garantir que sempre haja capacidade suficiente de leitura e gravação para todas as réplicas de tabela em todos Regiões da AWS de uma tabela multirregional no modo de capacidade provisionada, recomendamos que você configure o escalonamento automático do Amazon Keyspaces.

Ao usar uma tabela multirregional no modo provisionado com escalonamento automático, você não pode desativar o escalonamento automático para uma única réplica de tabela. Mas você pode ajustar as configurações de escalonamento automático de leitura da tabela para diferentes regiões. Por exemplo, você pode especificar diferentes configurações de capacidade de leitura e escalabilidade automática de leitura para cada região na qual a tabela é replicada.

As configurações de escalonamento automático de leitura que você define para uma réplica de tabela em uma região especificada substituem as configurações gerais de escalonamento automático da tabela. No entanto, a capacidade de gravação precisa permanecer sincronizada em todas as réplicas da tabela para garantir que haja capacidade suficiente para replicar gravações em todas as regiões.

O escalonamento automático do Amazon Keyspaces atualiza de forma independente a capacidade provisionada da tabela em cada Região da AWS com base no uso nessa região. Como resultado, a capacidade provisionada em cada região para uma tabela multirregional pode ser diferente quando o auto scaling está ativo.

Você pode definir as configurações de auto scaling de uma tabela multirregional e suas réplicas usando o console do Amazon Keyspaces,, API AWS CLI, ouCQL. Para obter mais informações sobre como criar e atualizar as configurações de escalonamento automático para tabelas multirregionais, consulte. Atualize a capacidade provisionada e as configurações de auto scaling para uma tabela multirregional no Amazon Keyspaces

nota

Se você usa o escalonamento automático para tabelas multirregionais, você deve sempre usar as operações do Amazon Keyspaces API para definir as configurações de escalabilidade automática. Se você usar as API operações do Application Auto Scaling diretamente para definir as configurações do Auto Scaling, você não tem a capacidade de especificar a Regiões da AWS da tabela multirregional. Isso pode resultar em configurações não suportadas.

Observações de uso

Antes de começar a usar o ajuste de escala automático do Amazon Keyspaces, você deve estar ciente do seguinte:

  • O ajuste de escala automático do Amazon Keyspaces pode aumentar a capacidade de leitura ou gravação sempre que necessário, de acordo com a sua política de ajuste de escala automático. Todas as cotas do Amazon Keyspaces permanecem em vigor, conforme descrito em Cotas para Amazon Keyspaces (para Apache Cassandra).

  • O ajuste de escala automático do Amazon Keyspaces não impede a modificação manual de configurações de throughput provisionado. Esses ajustes manuais não afetam nenhum CloudWatch alarme existente anexado à política de escalabilidade.

  • Se você usar o console para criar uma tabela com capacidade de throughput provisionada, o ajuste de escala automático do Amazon Keyspaces será habilitado por padrão. É possível modificar as configurações de ajuste de escala automático a qualquer momento. Para obter mais informações, consulte Desativar o escalonamento automático do Amazon Keyspaces para uma tabela.

  • Se você estiver usando AWS CloudFormation para criar políticas de escalabilidade, você deve gerenciar as políticas de escalabilidade de AWS CloudFormation para que a pilha esteja sincronizada com o modelo da pilha. Se você alterar as políticas de escalabilidade do Amazon Keyspaces, elas serão substituídas pelos valores originais do AWS CloudFormation modelo de pilha quando a pilha é redefinida.

  • Se você usa CloudTrail para monitorar a escalabilidade automática do Amazon Keyspaces, você pode ver alertas de chamadas feitas pelo Application Auto Scaling como parte de seu processo de validação de configuração. Para filtrar esses alertas, use o campo invokedBy, que conterá application-autoscaling.amazonaws.com para essas verificações de validação.