Panoramica delle tabelle delle statistiche integrate di Spanner

Le tabelle di statistiche integrate per Spanner ti aiutano a esaminare i problemi nel tuo database. Puoi eseguire query su queste tabelle per ottenere informazioni su query, transazioni e letture. L'elenco seguente riassume ogni tabella delle statistiche e le informazioni che offre:

Statistiche sulle query

Quando esamini i problemi del database, è utile sapere quali query sono costose, vengono eseguite di frequente o analizzano molti dati.

Le statistiche sulle query sono statistiche aggregate per le query (incluse le istruzioni DML e le query stream di modifiche), raccolte in intervalli di 1, 10 e 60 minuti. Le statistiche vengono raccolte per le istruzioni completate correttamente, nonché per quelle non riuscite, per quelle che hanno superato il tempo di attesa o per quelle annullate dall'utente.

Le statistiche includono l'utilizzo massimo della CPU, il numero totale di esecuzioni di query, la latenza media, la maggior parte dei dati sottoposti a scansione e altre statistiche di query di base. Utilizza queste statistiche per identificare query costose, eseguite di frequente o che richiedono un utilizzo intensivo di dati.

Puoi visualizzare queste metriche in una serie temporale utilizzando le dashboard Approfondimenti sulle query. Queste dashboard predefinite ti consentono di visualizzare i picchi di utilizzo della CPU e identificare le query inefficienti.

Query attive meno recenti

A volte è opportuno esaminare il carico di lavoro corrente sul sistema esaminando le query in esecuzione. Utilizza lo strumento Query attive meno recenti per esaminare le query in esecuzione da molto tempo che potrebbero influire sulle prestazioni del database. Questo strumento ti dice quali sono le query, quando hanno iniziato a essere eseguite e a quale sessione appartengono.

Le query relative ai flussi di modifiche non sono incluse nelle query attive meno recenti.

Statistiche sulle letture

Le statistiche di lettura possono essere utilizzate per esaminare le letture più comuni e che richiedono più risorse nel tuo database utilizzando l'API Reads di Spanner. Queste statistiche vengono raccolte e archiviate in tre diversi intervalli di tempo: minuti, 10 minuti e un'ora. Per ogni intervallo di tempo, Spanner monitora le letture che utilizzano più risorse.

Utilizza le statistiche di lettura per scoprire l'utilizzo combinato delle risorse da parte di tutte le letture, individuare le letture che consumano più CPU e scoprire come cambia nel tempo la frequenza di una lettura specifica.

Statistiche sulle transazioni

Le statistiche sulle transazioni possono essere utilizzate per esaminare i problemi correlati alle transazioni. Ad esempio, puoi verificare la presenza di transazioni con esecuzione lenta che potrebbero causare conflitti o identificare modifiche alle forme delle transazioni che stanno causando regressioni del rendimento. Ogni riga contiene statistiche di tutte le transazioni eseguite nel database durante intervalli di 1, 10 e 60 minuti.

Puoi visualizzare queste metriche in una serie temporale utilizzando la dashboard Approfondimenti sulle transazioni. La dashboard predefinita ti aiuta a visualizzare le latenze nelle transazioni e a identificare le transazioni problematiche.

Statistiche sui blocchi

Le statistiche sui blocchi possono essere utilizzate per esaminare i conflitti di blocco nel tuo database. Se utilizzata con le statistiche sulle transazioni, puoi trovare le transazioni che causano conflitti di blocco tentando di acquisire contemporaneamente i blocchi nelle stesse celle.

Puoi visualizzare queste metriche in una serie temporale utilizzando la dashboard Approfondimenti sui blocchi. La dashboard predefinita ti consente di visualizzare il tempo di attesa della serratura e confermare se le latenze sono dovute a conflitti di blocco con tempi di attesa elevati.

Metodi API inclusi in ogni strumento

In Spanner esiste una sovrapposizione tra transazioni, letture e query. Di conseguenza, potrebbe non essere chiaro quali metodi dell'API sono inclusi durante la compilazione dei risultati per ogni strumento di ispezione. La tabella riportata di seguito elenca i metodi API principali e la loro relazione con ciascun strumento.

Metodi API Modalità di transazione Statistiche sulle query Query attive meno recenti Statistiche sulle letture Statistiche sulle transazioni Statistiche sui blocchi
Lettura, streamingRead Transazione di sola lettura1 No No No No
Transazione di lettura/scrittura No No
ExecuteSql, ExecuteStreamingSql Transazione di sola lettura1 2 2 No No No
Transazione di lettura/scrittura No
ExecuteBatchDml Transazioni di lettura/scrittura 3 4 No
Esegui il commit Transazioni di lettura/scrittura (DML5, Mutazioni6) No No No

Note:

1 Le transazioni di sola lettura non sono incluse nelle statistiche sulle transazioni o nelle statistiche sui blocchi. Solo le transazioni di lettura/scrittura sono incluse nelle statistiche sulle transazioni e nelle statistiche sui blocchi.

2 Le query eseguite con l'API PartitionQuery non sono incluse nelle statistiche delle query o nelle query attive più vecchie.

3 Un batch di istruzioni DML viene visualizzato nelle statistiche sulle query come singola voce.

4 Le istruzioni all'interno del batch verranno visualizzate nelle query attive meno recenti, piuttosto che nell'intero batch.

5 Le operazioni DML non committate non sono incluse nelle statistiche sulle transazioni.

6 Le mutazioni vuote che sono effettivamente no-op non sono incluse nelle statistiche sulle transazioni.

Statistiche sulle dimensioni delle tabelle

Puoi utilizzare le statistiche sulle dimensioni delle tabelle per monitorare le dimensioni storiche delle tabelle e degli indici nel tuo database.

Utilizza le statistiche relative alle dimensioni delle tabelle per trovare le tendenze nelle dimensioni delle tabelle, degli indici e delle tabelle di stream di modifiche. Puoi anche tenere traccia delle tabelle e degli indici più grandi.

Tieni presente che questa funzionalità fornisce solo una prospettiva storica. Non è pensato per il monitoraggio in tempo reale.

Statistiche sulle operazioni della tabella

Puoi utilizzare le statistiche sulle operazioni sulle tabelle per:

  • Monitora l'utilizzo delle tabelle e degli indici nel database.
  • Individua le tendenze nell'utilizzo delle tabelle e degli indici.
  • Identificare le variazioni del traffico.

Inoltre, puoi correlare le modifiche allo spazio di archiviazione delle tabelle con le modifiche al traffico di scrittura.

Eseguire il debug degli hotspot nelle suddivisioni

Puoi eseguire il debug degli hotspot nel database per trovare suddivisioni nel database tiepide o calde, il che significa che una percentuale elevata del carico su una suddivisione è vincolata dalle risorse disponibili. Puoi visualizzare le statistiche relative alle suddivisioni con i punteggi di utilizzo della CPU più elevati nelle ultime 6 ore, con intervalli di 1 minuto.