Ottieni statistiche sulle query
Questa pagina descrive come ottenere le statistiche sulle query utilizzando l'interfaccia a riga di comando cbt
. Puoi
anche ottenere le statistiche sulle query utilizzando la libreria client Go per Cloud Bigtable.
I contenuti qui forniti sono destinati agli sviluppatori di applicazioni. Prima di leggere questa pagina, è importante comprendere il modello di archiviazione di Bigtable. Dovresti anche acquisire familiarità con le best practice per la progettazione di schemi e comprendere le prestazioni.
La possibilità di ottenere informazioni su una query Bigtable può essere utile durante lo sviluppo di un'applicazione. Consente di ottenere dati sulle prestazioni di una query, quindi di modificare la query o di modificare la progettazione dello schema per perfezionare le prestazioni della query.
Sebbene in generale una query sia una richiesta di dati inviata a una tabella, Bigtable restituisce statistiche sulle query solo per le richieste di lettura.
Prima di iniziare
- Se non hai già installato l'interfaccia a riga di comando
cbt
, segui le istruzioni nella panoramica dell'interfaccia a riga di comandocbt
, inclusi i passaggi per creare un file.cbtrc
. - Consulta la sezione Leggi le righe del riferimento dell'interfaccia a riga di comando
cbt
per acquisire familiarità con la sintassi della riga di comando e le opzioni disponibili per inviare una richiestacbt read
alla tua tabella. Tieni presente che l'interfaccia a riga di comandocbt
non supporta i filtri. - Assicurati di disporre dell'autorizzazione
bigtable.tables.readRows
per la tabella o di essere un'entità del ruolobigtable.reader
.
Eseguire la query
Crea una query utilizzando la sintassi per Leggi righe.
Esegui questo comando. Il parametro
include-stats=full
indica a Bigtable di restituire le statistiche sulle query.cbt read TABLE_ID QUERY include-stats=full
Sostituisci quanto segue:
TABLE_ID
: l'ID univoco della tabella su cui stai eseguendo la queryQUERY
: una query in formatocbt
con interfaccia a riga di comando
Il terminale visualizza i dati letti e un elenco contenente le seguenti statistiche:
rows_seen_count
: il numero di righe elaborate da Bigtable per la richiestarows_returned_count
: il numero di righe restituite dopo l'applicazione dei filtricells_seen_count
: il numero di celle elaborate per la richiestacells_returned_count
: il numero di celle restituite dopo l'applicazione dei filtrifrontend_server_latency
: latenza delle richieste misurata dal pool di server front-end di Bigtable, espressa in millisecondi
Interpretazione dei risultati
Osserva il rapporto tra le celle visualizzate e le celle restituite. Se il quoziente per
cells_seen_count
/cells_returned_count
è 1 o vicino a 1, questa è un'indicazione che la tua query non ha causato l'elaborazione di dati da parte di Bigtable che alla fine sono stati filtrati.Considera il numero di righe restituite. Più elevato è questo numero, maggiore è il lavoro svolto da Bigtable. Il numero ottimale in questo caso dipende dal caso d'uso e dai requisiti di latenza, ma in generale, una query che restituisce meno righe avrà una latenza inferiore.
Esempio
Se vuoi ottenere statistiche sulle query quando leggi tutte le righe che corrispondono all'espressione regolare orange:*.*
in una tabella denominata my-table
, puoi eseguire quanto segue:
cbt read my-table regex='.*orange' columns='.*:.*' include-stats=full
L'output è simile al seguente:
----------------------------------------
orange
Details:Color @ 2022/09/26-14:48:01.286000
"orange"
Details:Size @ 2022/09/26-14:48:01.286000
"medium"
Request Stats
====================
rows_seen_count: 10
rows_returned_count : 1
cells_seen_count: 2
cells_returned_count: 2
frontend_server_latency: 13ms
Passaggi successivi
- Identifica i tablet caldi di un cluster.
- Esamina le best practice per la progettazione degli schemi.