A observabilidade do banco de dados é uma medida da precisão com que é possível inferir o estado interno de um sistema de banco de dados com base nos dados (ou telemetria) gerado em registros, métricas e traces.
Diagnóstico e solução de problemas em um aplicativo podem ser particularmente difíceis e demorados quando um banco de dados está envolvido. A coleta de telemetria é essencial. Quando a telemetria é enriquecida com o contexto do aplicativo, as instâncias de banco de dados podem ser mais compreensíveis, observáveis e fáceis de manter. É possível identificar problemas e tendências problemáticas facilmente e remediar esses problemas antecipadamente, sem ter que incorrer em um tempo de inatividade dispendioso. Além disso, usando esses dados, é possível configurar instâncias de banco de dados mais recentes para coletar o tipo certo de dados desde o momento em que são iniciadas.
É possível usar dados de maneira eficiente e proativa para evitar problemas e se concentrar na inovação estratégica. A coleta de boa telemetria é particularmente útil no modelo de DevOps, em que os generalistas de banco de dados precisam analisar a telemetria de modo independente para monitorar, avaliar e otimizar o desempenho e a integridade de aplicativos em rápida evolução.
O Google Cloud oferece vários recursos avançados que abrangem os quatro estágios de observabilidade iterativa para ajudar você a manter a integridade do seu banco de dados do Cloud SQL.
Coleta de telemetria automatizada
Para alcançar as metas de observabilidade, começamos coletando a telemetria, de preferência por um processo automatizado. Quando coletados durante um período, a telemetria ajuda a estabelecer um valor de referência para métricas em diferentes condições de carregamento.
Os serviços do Google Cloud geram automaticamente dados de observabilidade, incluindo métricas, registros e traces, o que pode ajudar a fornecer uma visão geral completa da observabilidade.
O Cloud Monitoring coleta medições do seu serviço e dos recursos do Google Cloud que você usa. O Cloud SQL usa agentes personalizados de memória integrada para coletar a telemetria de consulta, resultando em baixo impacto no desempenho e eliminando a necessidade de manutenção do agente ou sobrecarga de segurança.
O Cloud Logging coleta dados de registro de componentes comuns do aplicativo. Para o Cloud SQL, consulte também Visualizar registros de instância.
O Cloud Trace coleta dados de latência e planos de consulta executados em aplicativos para ajudar a rastrear como as solicitações se propagam pelo aplicativo. É possível comparar essas distribuições de latência ao longo do tempo ou entre versões. O Cloud Trace alerta você quando detecta uma alteração significativa no perfil de latência do seu aplicativo, quando ele estiver instrumentado para usar o Cloud Trace.
O Sqlcommenter, uma biblioteca OpenTelemetry para bancos de dados, ajuda você a monitorar os bancos de dados pelas lentes de um aplicativo. A Sqlcommenter instrumenta automaticamente os ORMs para ampliar as instruções SQL com tags e permite que as informações de contexto de trace do OpenTelemetry sejam propagadas para o banco de dados.
Com tags e rastreamento de contexto do aplicativo em bancos de dados, é fácil correlacionar código de aplicativo com o desempenho do banco de dados e resolver problemas em arquiteturas baseadas em microsserviços.
Monitoramento do banco de dados
O monitoramento adequado ajuda a determinar se o aplicativo está funcionando de maneira ideal. Implemente o monitoramento antecipadamente, como antes de iniciar uma migração ou implantar um novo aplicativo em um ambiente de produção. Elimine a ambiguidade entre problemas de aplicativos e problemas de nuvem.
A página de visão geral do Cloud SQL mostra gráficos de algumas das principais métricas.
O Cloud SQL também ajuda a comparar métricas de instâncias selecionadas.
Use o Cloud Monitoring para criar painéis personalizados para monitorar métricas e configurar políticas de alertas para receber notificações oportunas.
Ajuste de banco de dados
É possível resolver problemas e ajustar iterativamente seu banco de dados.
Os recomendadores do Cloud SQL ajudam a analisar o uso atual do banco de dados, além de fornecer recomendações e insights baseados em métodos heurísticos e machine learning.
Os recomendadores do Cloud SQL são descritos brevemente da seguinte maneira:
Nome | Descrição |
---|---|
Recomendador de falta de espaço em disco | Reduza o risco de inatividade causado pelas instâncias do Cloud SQL sem espaço em disco. |
Recomendador de instância ociosa | Reduza os custos encerrando instâncias do Cloud SQL que estão inativas. |
Recomendador com provisionamento em excesso | Reduza os custos redimensionando instâncias do Cloud SQL que são desnecessariamente grandes para uma determinada carga de trabalho. |
Recomendador de instância subprovisionado | Evite gargalos no uso elevado de CPU e memória e minimize a probabilidade de eventos de falta de memória redimensionando instâncias do Cloud SQL com alto uso de CPU e/ou memória. |
A seguir
- Veja a lista de métricas do Cloud SQL.
- Saiba mais sobre o Cloud Logging e o Cloud Monitoring. Consulte também Visualizar registros da instância.
- Resolva problemas e ajuste a instância do banco de dados.
- Saiba mais sobre os recomendadores do Google Cloud.