Como resolvo problemas de ajuste de escala automático no Amazon Keyspaces?
Ativei o AWS Auto Scaling para minha tabela Amazon Keyspaces (para Apache Cassandra). No entanto, ainda vejo controles porque a capacidade consumida é maior do que a capacidade provisionada.
Breve descrição
O Amazon Keyspaces usa o rastreamento de destinos do ajuste de escala automático do AWS Application. O valor percentual de utilização alvo é a relação entre a capacidade consumida e a capacidade provisionada.
O ajuste de escala automático do aplicativo cria alarmes do Amazon CloudWatch em seu nome. Esse alarme invoca o ajuste de escala automático do AWS Application, que notifica o Amazon Keyspaces para ajustar a capacidade de transferência provisionada da tabela.
O ajuste de escala automático do Application modifica a throughput provisionada somente quando a carga de trabalho permanece reduzida ou elevada por vários minutos. Por exemplo, você define as unidades de capacidade mínima de leitura (RCUs) como 100 e a utilização desejada como 70%:
- O ajuste de escala automático do Application aumenta a capacidade provisionada quando a utilização excede 70 RCUs por pelo menos três minutos consecutivos.
- O ajuste de escala automático do Application diminui a capacidade provisionada quando a utilização fica em 20% ou mais abaixo da meta por 15 minutos consecutivos (50 RCUs).
Resolução
O ajuste de escala automático do Application pode não ser adequado para executar cargas de tráfego com picos em uma tabela. Isso ocorre porque talvez não haja pontos de dados consecutivos suficientes para que a capacidade consumida atenda às suas necessidades de capacidade. Nesses casos, você pode enfrentar controle de utilização na sua tabela porque a capacidade consumida excede a capacidade provisionada. Isso acontece porque pontos de dados suficientes não ultrapassaram o limite de utilização do ajuste de escala automático do Application para dimensionar sua capacidade.
Para determinar se a capacidade consumida é maior do que a capacidade provisionada, use as métricas do Amazon CloudWatch. Use a estatística Soma para calcular a throughput consumida. Por exemplo, obtenha o valor da Soma em um período de um minuto. Em seguida, divida-o por 60 para calcular a média de ConsumedReadCapacityUnits por segundo. Observe que essa média não destaca nenhum pico grande, mas breve, na atividade de leitura que ocorreu durante esse minuto. Você pode comparar o valor calculado com o valor da throughput provisionada que você fornece para o Amazon Keyspaces.
Confira a seguir algumas das melhores práticas para solucionar problemas de ajuste de escala automático do Application na sua tabela do Amazon Keyspaces:
- Se o tráfego da tabela for frequentemente imprevisível, considere atualizar a tabela para o modo sob demanda. O modo sob demanda é adequado para executar cargas de trabalho com picos, pois se adapta instantaneamente às suas necessidades de capacidade. À medida que seu tráfego se torna consistente ou aumenta gradualmente, comece a usar o ajuste de escala automático do Application novamente.
- Configure uma política de nova tentativa no seu aplicativo. Use o recuo exponencial e tente novamente. Ou adicione instabilidade. Você pode usar essas abordagens para introduzir algum atraso entre as novas tentativas subsequentes. Com essas abordagens, você pode garantir que as novas tentativas não se esgotem rapidamente. Para mais informações, consulte Instabilidade e recuo exponenciais.
- Não exclua os alarmes do CloudWatch criados pelo ajuste de escala automático do Application para Amazon Keyspaces. Se você excluir esses alarmes, o ajuste de escala automático do Application poderá não funcionar conforme o esperado. Se você excluir acidentalmente esses alarmes, desative o ajuste de escala automático do Application e ligue-o novamente. O CloudWatch recria os alarmes automaticamente.
- Não confie no ajuste de escala automático do Application para lidar com picos ocasionais de atividades de curta duração. O ajuste de escala automático do Application funciona melhor quando há aumentos ou diminuições graduais no tráfego. A capacidade de expansão integrada da tabela lida com picos ocasionais de atividade. Observe que o Amazon Keyspaces também pode consumir capacidade de expansão para manutenção em segundo plano e outras tarefas sem aviso prévio.
Conteúdo relevante
- AWS OFICIALAtualizada há 6 meses
- AWS OFICIALAtualizada há 2 anos
- AWS OFICIALAtualizada há um ano
- AWS OFICIALAtualizada há um ano