Statistiche della tabella
Cloud Bigtable fornisce statistiche sulla tabella, ovvero metadati relativi a una tabella, che forniscono informazioni di riepilogo sulla tabella, come il numero di righe o il numero medio di celle per colonna.
Questo documento descrive le statistiche della tabella e spiega come accedervi utilizzando Google Cloud CLI. Prima di leggere questa pagina, è necessario capire il modello di archiviazione di Bigtable e le best practice per la progettazione degli schemi e la garbage collection.
Le statistiche della tabella forniscono l'osservabilità in una tabella Bigtable. Possono essere utili quando risolvi i problemi di prestazioni o archiviazione o quando vuoi determinare l'origine dei costi di archiviazione. Può anche aiutarti a determinare se stai memorizzando più dati del necessario.
Precisione prevista
Quando recuperi le statistiche della tabella per una tabella, i dati ottenuti sono approssimativi; le statistiche della tabella riflettono lo stato della tabella in uno dei cluster dell'istanza al momento della compattazione più recente.
Una serie completa di statistiche non è disponibile prima della compazione iniziale, che in genere si verifica circa una settimana dopo la creazione della tabella. Le statistiche della tabella sono accurate risalenti all'ultima compattazione, che può risalire fino a una settimana fa.
Campi delle statistiche della tabella
Una richiesta per le statistiche di una tabella restituisce i seguenti campi. I dettagli e gli esempi si trovano nella sezione successiva.
Campo Statistiche della tabella | Nome API | Description |
---|---|---|
Conteggio delle righe | row_count |
Il numero di righe nella tabella. Per maggiori dettagli, consulta Conteggio righe. |
Numero medio di colonne per riga | average_columns_per_row |
Il numero medio di colonne in ogni riga per l'intera tabella. Per dettagli e un esempio, consulta la sezione Numero medio di colonne per riga |
Numero medio di celle per colonna | average_cells_per_column |
Il numero medio di celle archiviate in tutte le colonne in tutte le righe. Per maggiori dettagli, consulta la sezione Numero medio di celle per colonna. |
Dati logici in byte | logical_data_bytes |
La quantità di spazio occupato dalla tabella. Per maggiori dettagli, vedi Dati logici in byte. |
Le statistiche della tabella includono anche i seguenti campi per ogni famiglia di colonne nella tabella.
Campo delle statistiche per la famiglia di colonne | Nome API | Description |
---|---|---|
Numero medio di colonne per riga | average_columns_per_row |
Il numero medio di colonne per riga nella famiglia di colonne. Per dettagli e un esempio, consulta la sezione Numero medio di colonne per riga. |
Numero medio di celle per colonna | average_cells_per_column |
Il numero di celle di ogni colonna, calcolato su una media su tutte le righe che hanno colonne nella famiglia di colonne. Per maggiori dettagli e un esempio, vedi Numero medio di celle per colonna. |
Dati logici in byte | logical_data_bytes |
La quantità di spazio occupato dalla famiglia di colonne. Per maggiori dettagli, consulta Dati logici in byte. |
Dettagli del campo delle statistiche della tabella
Conteggio delle righe
Il conteggio delle righe è il numero di righe nella tabella. Ogni riga è identificata dalla relativa chiave di riga.
Numero medio di colonne per riga
Per arrivare al numero medio di colonne per riga per una tabella, Bigtable conteggia il numero di colonne nell'intera tabella e divide il valore per il numero di righe nella tabella.
Considera ad esempio la seguente tabella. La prima riga ha tre colonne, la seconda contiene due colonne.
Chiave di riga | Famiglia di colonne famiglia-A | Famiglia di colonne famiglia-B | ||
---|---|---|---|---|
chiave di riga 1 | famiglia-A:qualificatore-W | famiglia-A:qualificatore-X | famiglia-B:qualificatore-Y | |
chiave di riga 2 | famiglia-A:qualificatore-W | famiglia-B:qualificatore-Z |
La tabella ha cinque colonne e due righe, quindi il numero medio di colonne per riga è 2.5
.
Questa statistica a tabella ti dà un'idea generale se la tua tabella è alta e stretta (poche colonne per riga) o corta e larga (molte colonne in ogni riga).
Numero medio di celle per colonna
Per ottenere il numero medio di celle per colonna per una tabella, Bigtable prende il numero totale di celle archiviate nella tabella e la divide per il numero di colonne nella tabella.
A seconda dei criteri di progettazione dello schema e di garbage collection, la tabella potrebbe contenere più celle o una sola colonna. Il numero di celle che puoi archiviare è legato ai limiti relativi alle dimensioni dei dati descritti nella pagina Quote e limiti in Dimensioni dei dati all'interno delle tabelle.
Se ritieni che questo numero sia più alto del previsto, esamina le regole della raccolta dei rifiuti per vedere se stai conservando più celle del necessario. Potreste inoltre chiedere se occorre regolare gli schemi di schema e scrittura.
Dati logici in byte (tabella)
Questo valore rappresenta il numero approssimativo di byte necessari per leggere l'intera tabella. Questa statistica a tabella ti dà un'idea di quanti byte sono archiviati nella tabella. Conoscere i dati logici in byte può aiutarti a comprendere l'impatto della compressione sulla tabella. Ad esempio, se le dimensioni della tabella riportate in Cloud Monitoring sono uguali o superiori ai dati logici in byte per la tabella, è possibile che i dati siano archiviati in un formato non facilmente compresso.
Dettagli del campo delle statistiche per la famiglia di colonne
Le statistiche di una tabella includono i seguenti campi per ogni famiglia di colonne nella tabella.
Numero medio di colonne per riga
Questo numero viene calcolato dividendo il numero di colonne della famiglia di colonne per il numero di righe nella tabella.
Considera ad esempio la seguente tabella. La tabella ha tre righe con
colonne nelle famiglie di colonne family-A
e family-B
.
Chiave di riga | Famiglia di colonne famiglia-A | Famiglia di colonne famiglia-B | ||
---|---|---|---|---|
chiave di riga 1 | famiglia-A:qualificatore-W | famiglia-A:qualificatore-X | famiglia-B:qualificatore-Y | |
chiave di riga 2 | famiglia-A:qualificatore-W | |||
chiave di riga 3 | famiglia-A:qualificatore-W | famiglia-A:qualificatore-X | famiglia-B:qualificatore-Y | famiglia-B:qualificatore-Z |
La famiglia di colonne family-A
contiene un totale di cinque colonne nella tabella. Dividendo per tre righe, il numero medio di celle per colonna per family-A
è pari a 1.67
(arrotondato qui a due cifre decimali).
La famiglia di colonne family-B
contiene un totale di tre colonne nella tabella. Diviso per tre righe, il numero medio di colonne per riga per family-A
è 1
.
Numero medio di celle per colonna
Per determinare il numero medio di celle di una famiglia di colonne per colonna, Bigtable prende il conteggio di tutte le celle della famiglia di colonne in tutte le righe della tabella e lo divide per il numero di righe nella tabella.
Considera ad esempio le seguenti righe nella famiglia di colonne family-D
.
Chiave di riga | Famiglia di colonne - famiglia-D | ||
---|---|---|---|
chiave di riga 1 | family-D:qualifier-W (3 celle) | family-D:qualifier-X (1 cella) | |
chiave di riga 2 | family-D:qualifier-X (10 celle) | ||
chiave di riga 3 | family-D:qualifier-W (7 celle) | family-D:qualifier-Y (6 celle) |
Il conteggio delle celle nella famiglia di colonne è 3 + 1 + 10 + 7 + 6 = 27. Il valore diviso per 3 (il numero di righe) indica che la famiglia di colonne family-D
ha una media di celle per colonna di 9
.
Dati logici in byte (famiglia di colonne)
I dati logici, in byte, riflettono lo spazio occupato dalla famiglia di colonne. Questo valore è approssimativamente il numero di byte necessari per leggere tutti i dati nella famiglia di colonne nel momento in cui vengono restituite le statistiche della tabella.
Esempio di utilizzo dell'interfaccia a riga di comando gcloud
Per ottenere le statistiche di una tabella chiamata sample-table
, utilizza il comando
bigtable instances table describe
:
gcloud bigtable instances tables describe TABLE_ID \
--instance=INSTANCE_ID --view stats
Sostituisci quanto segue:
TABLE_ID
: l'identificatore permanente della tabellaINSTANCE_ID
: l'identificatore permanente dell'istanza
L'output è simile al seguente:
columnFamilies: my-family: stats: averageCellsPerColumn: 12.34 averageColumnsPerRow: 56.78 logicalDataBytes: 314159 name: projects/my-project/instances/INSTANCE_ID/tables/TABLE_ID stats: averageCellsPerColumn: 12.34 averageColumnsPerRow: 56.78 logicalDataBytes: 314159 rowCount: 271828