Melhores práticas do Amazon Aurora
A seguir, você encontra informações sobre as melhores práticas e as opções gerais para usar ou migrar dados para um cluster de bancos de dados Amazon Aurora.
Algumas melhores práticas do Amazon Aurora são específicas a um mecanismo de banco de dados específico. Para obter mais informações sobre as melhores práticas do Aurora específicas de um mecanismo de banco de dados, consulte:
Mecanismo do banco de dados | Práticas recomendadas |
---|---|
Amazon Aurora MySQL |
|
Amazon Aurora PostgreSQL |
nota
Para obter as recomendações comuns para o Aurora, consulte Recomendações do Amazon Aurora.
Tópicos
- Diretrizes operacionais básicas do Amazon Aurora
- Recomendações de RAM para a instância de banco de dados
- Drivers de banco de dados da AWS
- Monitoramento do Amazon Aurora
- Como trabalhar com grupos de parâmetros de banco de dados e grupos de parâmetros de cluster de banco de dados
- Vídeo de práticas recomendadas do Amazon Aurora
Diretrizes operacionais básicas do Amazon Aurora
As diretrizes operacionais básicas a seguir devem ser seguidas por todos ao trabalhar com o Amazon Aurora. O Acordo de Nível de Serviço do Amazon RDS exige que você siga estas diretrizes:
-
Monitore sua memória, CPU e uso de armazenamento. O Amazon CloudWatch pode ser configurado para lhe notificar quando os padrões de uso mudam ou quando você se aproxima da capacidade de implantação. Dessa maneira, é possível manter a disponibilidade e a performance do sistema.
-
Se o seu aplicativo cliente estiver armazenando em cache os dados do Serviço de Nome de Domínio (DNS) de suas instâncias de banco de dados, defina um valor de tempo de vida (TTL) de menos de 30 segundos. O endereço IP subjacente de uma instância de banco de dados pode ser alterado após um failover. Portanto, armazenar em cache os dados de DNS por um tempo prolongado poderá resultar em falhas de conexão se a aplicação tentar se conectar a um endereço IP que não está mais em serviço. Os clusters de bancos de dados Aurora com várias réplicas de leitura também podem sofrer falhas de conexão quando as conexões usam o endpoint de leitor e uma das instâncias da réplica de leitura está em manutenção ou foi excluída.
-
Teste o failover do cluster de banco de dados para entender quanto tempo o processo leva para seu caso de uso. O teste de failover pode ajudar a garantir que a aplicação que acessa o cluster de banco de dados possa se conectar automaticamente ao novo cluster de banco de dados após o failover.
Recomendações de RAM para a instância de banco de dados
Para otimizar o desempenho, aloque RAM suficiente para que seu conjunto de trabalho resida quase que completamente na memória. Para determinar se o seu conjunto de trabalho está quase todo na memória, examine as seguintes métricas no Amazon CloudWatch:
-
VolumeReadIOPS
– essa métrica calcula o número médio de operações de E/S de leitura de um volume de cluster, relatado em intervalos de cinco minutos. O valor deVolumeReadIOPS
deve ser pequeno e estável. Em alguns casos, você pode achar que a E/S de leitura está apresentando picos ou é maior do que a habitual. Se esse for o caso, investigue as instâncias de banco de dados no cluster de banco de dados para ver quais instâncias de banco de dados estão causando o aumento de E/S.dica
Se seu cluster do Aurora MySQL usar consulta paralela, você poderá ver um aumento nos valores de
VolumeReadIOPS
. As consultas paralelas não usam o grupo de buffers. Assim, embora as consultas sejam rápidas, esse processamento otimizado pode resultar em aumento nas operações de leitura e nas cobranças associadas. -
BufferCacheHitRatio
– essa métrica mede a porcentagem de solicitações que são atendidas pelo cache do buffer de uma instância de banco de dados em seu cluster de banco de dados. Essa métrica fornece informações sobre a quantidade de dados que estão sendo obtidos da memória.Uma alta taxa de acerto indica que sua instância de banco de dados tem memória suficiente disponível. Uma alta de acertos baixa indica que as consultas nessa instância de banco de dados estão acessando o disco com maior frequência. Investigue a workload para ver quais consultas estão causando esse comportamento.
Se, após a investigação da carga de trabalho, você descobrir que precisa de mais memória, considere expandir a classe de instância de banco de dados para uma classe com mais RAM. Depois disso, você poderá investigar as métricas discutidas anteriormente acima e continuar a expansão, se necessário. Se o cluster do Aurora for maior do que 40 TB, não use classes de instância db.t2, db.t3 ou db.t4g.
Para ter mais informações, consulte Métricas do Amazon CloudWatch para o Amazon Aurora.
Drivers de banco de dados da AWS
Recomendamos o pacote de drivers da AWS para conectividade de aplicações. Os drivers foram projetados para comportar tempos mais rápidos de transição e failover, além de autenticação com o AWS Secrets Manager, o AWS Identity and Access Management (IAM) e identidades federadas. Os drivers da AWS dependem do monitoramento do status do cluster de banco de dados e do conhecimento da topologia do cluster para determinar o novo gravador. Essa abordagem reduz os tempos de transição e de failover para segundos de um dígito, em comparação com dezenas de segundos para drivers de código aberto.
Como novos recursos do serviço são introduzidos, o objetivo do pacote de drivers da AWS é ter suporte integrado para esses recursos do serviço.
Para ter mais informações, consulte Conectar-se aos clusters de banco de dados do Aurora com os drivers da AWS.
Monitoramento do Amazon Aurora
O Amazon Aurora fornece várias métricas e informações que você pode monitorar para determinar a integridade e a performance do cluster de bancos de dados do Aurora. É possível usar várias ferramentas, como o AWS Management Console, a AWS CLI e a API do CloudWatch para visualizar métricas do Aurora. É possível visualizar as métricas combinadas do Insights de Performance e do CloudWatch no painel do Insights de Performance e monitorar a instância de banco de dados. Para usar essa visualização de monitoramento, o Insights de Performance deve estar ativado para a instância de banco de dados. Para obter mais informações sobre essa visualização de monitoramento, consulte Visualizar métricas combinadas com o painel do Insights de Performance.
Você pode criar um relatório de análise de performance para um período específico e visualizar os insights identificados e as recomendações para resolver os problemas. Para ter mais informações, consulte Criar um relatório de análise de performance no Insights de Performance.
Como trabalhar com grupos de parâmetros de banco de dados e grupos de parâmetros de cluster de banco de dados
Recomendamos que você experimente fazer mudanças de parameter groups de banco de dados e de parameter groups de cluster de banco de dados em um cluster de banco de dados de teste, antes de aplicar alterações de parameter group ao cluster de banco de dados de produção. A definição incorreta de parâmetros do mecanismo de banco de dados pode ter efeitos adversos não intencionais, inclusive a diminuição no desempenho e a instabilidade do sistema.
Sempre tenha cuidado ao modificar os parâmetros do mecanismo de banco de dados e faça backup do cluster de banco de dados antes de modificar um grupo de parâmetros de banco de dados. Para obter informações sobre o backup do cluster de banco de dados, consulte Como fazer o backup e a restauração de um cluster de banco de dados do Amazon Aurora.
Vídeo de práticas recomendadas do Amazon Aurora
O canal das AWS Online Tech Talks no YouTube inclui uma apresentação em vídeo sobre as práticas recomendadas para criar e configurar um cluster de bancos de dados do Amazon Aurora mais seguro e altamente disponível.