Avaliação do uso de instâncias de banco de dados para Aurora MySQL com métricas do Amazon CloudWatch
Você pode usar as métricas do CloudWatch para monitorar o throughput de sua instância de banco de dados e descobrir se sua classe de instância fornece recursos suficientes para suas aplicações. Para obter informações sobre limites de classe de instância de banco de dados, consulte Especificações de hardware para classes de instância de banco de dados para o Aurora. Encontre as especificações da sua classe de instância de banco de dados para descobrir o desempenho da rede.
Se o uso da sua instância de banco de dados estiver próximo do limite da classe da instância, a performance poderá começar a diminuir. As métricas do CloudWatch podem confirmar essa situação para que você possa planejar o aumento vertical manual da escala para uma classe de instância maior.
Combine os seguintes valores de métricas do CloudWatch para descobrir se você está se aproximando do limite da classe da instância:
-
NetworkThroughput: o throughput de rede recebido e transmitido pelos clientes para cada instância no cluster de bancos de dados do Aurora. Esse valor de throughput não inclui o tráfego de rede entre instâncias no cluster de banco de dados e o volume do cluster.
-
StorageNetworkThroughput: o throughput da rede recebido e enviado ao subsistema de armazenamento do Aurora por cada instância no cluster de banco de dados do Aurora.
Adicione NetworkThroughput a StorageNetworkThroughput para encontrar o throughput da rede recebido e enviado ao subsistema de armazenamento do Aurora por cada instância no cluster de banco de dados do Aurora. O limite da classe de instância para sua instância deve ser maior do que a soma dessas duas métricas combinadas.
Você pode usar as seguintes métricas para analisar detalhes adicionais do tráfego de rede das aplicações clientes ao enviar e receber:
-
NetworkReceiveThroughput: a quantidade de throughput de rede recebida dos clientes por cada instância de banco de dados no cluster de banco de dados do Aurora MySQL. Essa taxa de transferência não inclui o tráfego de rede entre instâncias no cluster de banco de dados do e o volume do cluster.
-
NetworkTransmitThroughput: a quantidade de throughput de rede enviada aos clientes por cada instância no cluster de bancos de dados do Aurora. Essa taxa de transferência não inclui o tráfego de rede entre instâncias no cluster de banco de dados do e o volume do cluster.
-
StorageNetworkReceiveThroughput: a quantidade de throughput de rede recebida do subsistema de armazenamento do Aurora por cada instância no cluster de banco de dados.
-
StorageNetworkTransmitThroughput: a quantidade de throughput de rede enviada ao subsistema de armazenamento do Aurora por cada instância no cluster de banco de dados.
Adicione todas essas métricas para avaliar como o uso da rede se compara ao limite da classe da instância de banco de dados. O limite da classe de instância deve ser maior do que a soma dessas métricas combinadas.
Os limites de rede e a utilização da CPU para armazenamento estão diretamente relacionados. Quando o throughput de rede aumenta, a utilização da CPU também aumenta. O monitoramento do uso da CPU e da rede fornece informações sobre como e por que os recursos estão sendo esgotados.
Para ajudar a minimizar o uso da rede, você pode considerar o seguinte:
-
Usar uma classe de instância de banco de dados maior.
-
Dividir as solicitações de gravação em lotes para reduzir o total de transações.
-
Direcionar a workload somente leitura para uma instância somente leitura.
-
Excluir todos os índices não utilizados.