L'osservabilità del database è una misura di quanto accuratamente puoi dedurre lo stato interno di un sistema di database in base ai dati o alla telemetria che genera in log, metriche e tracce.
La diagnosi e la risoluzione dei problemi in un'applicazione possono essere particolarmente difficili e richiedere molto tempo quando è coinvolto un database. La raccolta della telemetria è di fondamentale importanza. La telemetria, se arricchita con il contesto dell'applicazione, può rendere le istanze di database più comprensibili, osservabili e facili da gestire. Puoi identificare facilmente i problemi e le tendenze problematiche e risolverli in anticipo, senza dover incorrere in costosi tempi di inattività. Inoltre, utilizzando questi dati, puoi configurare le istanze di database più recenti in modo che raccolgano il tipo di dati corretto fin dal momento in cui vengono avviate.
Puoi utilizzare i dati in modo efficace e proattivo per prevenire problemi e concentrarti sull'innovazione strategica. Una buona raccolta di dati di telemetria è particolarmente utile nel modello DevOps, in cui gli esperti generalisti di database devono analizzare in modo indipendente i dati di telemetria per monitorare, valutare e ottimizzare le prestazioni e l'integrità delle loro applicazioni in rapida evoluzione.
Google Cloud offre diverse funzionalità avanzate che coprono le quattro fasi iterative di osservabilità per aiutarti a mantenere l'integrità del tuo database Cloud SQL.

Raccolta automatizzata di dati di telemetria
Per raggiungere gli obiettivi di osservabilità, iniziamo raccogliendo la telemetria, preferibilmente tramite una procedura automatica. Se raccolti in un periodo di tempo, i dati di telemetria aiutano a stabilire una base di riferimento per le metriche in diverse condizioni di carico.
Google Cloud generano automaticamente dati di osservabilità, tra cui metriche, log e tracce, che possono contribuire a fornire una panoramica completa dell'osservabilità.
Cloud Monitoring raccoglie le misurazioni del tuo servizio e delle risorse Google Cloud che utilizzi. Cloud SQL utilizza agenti personalizzati di memoria integrati per raccogliere la telemetria delle query, con un impatto inferiore sulle prestazioni ed eliminando la necessità di manutenzione o overhead di sicurezza degli agenti.
Cloud Logging raccoglie i dati di logging dai componenti comuni delle applicazioni. Per Cloud SQL, vedi anche Visualizzare i log dell'istanza.
Cloud Trace raccoglie i dati di latenza e i piani di query eseguiti dalle applicazioni per aiutarti a monitorare la propagazione delle richieste nella tua applicazione. Puoi confrontare queste distribuzioni della latenza nel tempo o tra le versioni. Cloud Trace ti avvisa quando rileva una variazione significativa nel profilo di latenza della tua applicazione quando è instrumentata per utilizzare Cloud Trace.
Sqlcommenter, una libreria OpenTelemetry per i database, ti aiuta a monitorare i tuoi database dal punto di vista di un'applicazione. Sqlcommenter instrumenta automaticamente gli ORM per aumentare le istruzioni SQL con tag e consente di propagare al database le informazioni sul contesto di traccia di OpenTelemetry.
Con i tag e il contesto dell'applicazione di traccia nei database, è facile correlare il codice dell'applicazione con le prestazioni del database e risolvere i problemi delle architetture basate su microservizi.
Monitoraggio del database
Un monitoraggio adeguato ti aiuta a determinare se la tua applicazione funziona in modo ottimale. Implementa il monitoraggio in anticipo, ad esempio prima di avviare una migrazione o eseguire il deployment di una nuova applicazione in un ambiente di produzione. Distinguere tra problemi dell'applicazione e problemi del cloud sottostanti.
La dashboard Cloud SQL System Insights prende in considerazione diversi indicatori importanti dell'integrità e delle prestazioni complessive del database.
La dashboard mostra grafici per diverse metriche importanti, che ti aiutano a ottenere informazioni su problemi come throughput, latenza e costo. Queste informazioni ti aiutano a rispondere in modo proattivo man mano che le esigenze della tua applicazione cambiano. Puoi confrontare il rendimento attuale con le tendenze passate e identificare anomalie che potrebbero richiedere un'indagine.
La pagina Panoramica di Cloud SQL mostra i grafici di alcune delle metriche chiave.
Cloud SQL ti aiuta anche a confrontare le metriche per le istanze selezionate.
Puoi utilizzare Cloud Monitoring per creare dashboard personalizzate che ti aiutano a monitorare le metriche e per configurare criteri di avviso in modo da ricevere notifiche tempestive.
Analisi di database e query
Lo strumento Query Insights di Cloud SQL fornisce monitoraggio e diagnostica che consentono di rilevare e risolvere i problemi di prestazioni delle query.
Le dashboard di Query Insights ti aiutano a identificare in anticipo i problemi di prestazioni delle query e ti consentono di passare dal rilevamento alla risoluzione utilizzando una singola interfaccia. I piani di query visivi integrati ti aiutano a risolvere i problemi per trovare la causa principale. Puoi anche utilizzare la tracciabilità end-to-end e contestuale delle applicazioni per trovare l'origine di una query problematica.
Query Insights fornisce un monitoraggio incentrato sulle applicazioni che ti aiuta a diagnosticare i problemi di prestazioni per le applicazioni create utilizzando i mapping relazionali a oggetti (ORM). Puoi taggare le query con la logica di business a cui sono associate, ad esempio pagamento, inventario, analisi aziendale o spedizione. Query Insights può essere integrato con gli strumenti APM esistenti, consentendoti di monitorare e risolvere i problemi delle query utilizzando il tuo strumento preferito.
Lo strumento Query Insights utilizza sqlcommenter per instrumentare automaticamente gli ORM. Questa strumentazione ti aiuta a identificare il codice dell'applicazione che causa problemi. Query Insights supporta gli standard OpenTelemetry e rende disponibili le metriche delle query e i dati di tracciamento per gli strumenti APM tramite l'API Google Cloud Observability.
Query Insights si integra con Cloud Monitoring, consentendoti di creare dashboard e avvisi personalizzati su metriche o tag delle query e di ricevere notifiche tramite email, SMS, Slack, PagerDuty e altro ancora.
Ottimizzazione del database
Puoi risolvere i problemi e ottimizzare il tuo database in modo iterativo.
I suggerimenti di Cloud SQL ti aiutano ad analizzare l'utilizzo attuale del tuo database e forniscono suggerimenti e approfondimenti basati su metodi euristici e machine learning.
I motori per suggerimenti di Cloud SQL sono descritti brevemente come segue:
Nome | Descrizione |
---|---|
Motore per suggerimenti disco esaurito | Ridurre il rischio di tempi di inattività che potrebbero essere causati dall'esaurimento dello spazio su disco delle istanze Cloud SQL. |
Motore per suggerimenti istanze inattive | Riduci i costi arrestando le istanze Cloud SQL che sono inattive inavvertitamente. |
Motore per suggerimenti istanze con provisioning eccessivo | Riduci i costi ridimensionando le istanze Cloud SQL che sono inutilmente grandi per un determinato workload. |
Motore per suggerimenti istanze con provisioning insufficiente | Evita i colli di bottiglia dovuti a un elevato utilizzo di CPU e memoria e riduci al minimo la probabilità di eventi di esaurimento della memoria ridimensionando le istanze Cloud SQL con un elevato utilizzo di CPU e/o memoria. |
Motore per suggerimenti sull'utilizzo elevato di ID transazione | Ottimizza le prestazioni dell'istanza evitando il potenziale wraparound dell'ID transazione per le istanze Cloud SQL per PostgreSQL. |
Passaggi successivi
- Visualizza l'elenco delle metriche Cloud SQL.
- Utilizza Query Insights per migliorare le prestazioni delle query.
- Utilizza System Insights per migliorare il rendimento delle istanze.
- Guarda il video: Introducing Cloud SQL insights.
- Leggi il post del blog sul lancio: Osservabilità del database per gli sviluppatori: introduzione di Cloud SQL Insights.
- Leggi il post del blog: Migliora le tue competenze di risoluzione dei problemi relativi alle prestazioni delle query con Cloud SQL Insights.
- Leggi il blog: Attivare il tagging delle query con Sqlcommenter.
- Scopri di più su Cloud Logging e Cloud Monitoring. Vedi anche Visualizzazione dei log delle istanze.
- Risolvi i problemi e ottimizza l'istanza di database.
- Scopri di più sui Google Cloud sistemi di raccomandazione.