Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Statistiche della tabella

Cloud Bigtable fornisce statistiche sulle tabelle, ossia metadati relativi a una tabella, che forniscono informazioni di riepilogo sulla tabella, ad esempio il numero di righe o il numero medio di celle per colonna.

Questo documento descrive le statistiche nelle tabelle e spiega come riceverle utilizzando Google Cloud CLI. Prima di leggere questa pagina, è necessario capire il modello di archiviazione di Bigtable e conoscere le best practice per la progettazione dello schema e la garbage collection.

Le statistiche della tabella forniscono l'osservabilità in una tabella Bigtable. Possono essere utili durante la risoluzione di problemi relativi alle prestazioni o all'archiviazione o quando si vuole determinare l'origine dei costi di archiviazione. Inoltre, possono aiutarti a determinare se stai archiviando più dati del necessario.

Precisione prevista

Quando recuperi le statistiche di una tabella, i dati ottenuti sono approssimativi; le statistiche della tabella riflettono lo stato della tabella in uno dei cluster dell'istanza a partire dalla compattazione più recente.

Una serie completa di statistiche sulle tabelle è disponibile solo dopo la compattazione iniziale, che in genere si verifica circa una settimana dopo la creazione della tabella. Le statistiche della tabella sono accurate fino alla compattazione più recente, che potrebbe essere risalente a una settimana fa.

Campi delle statistiche della tabella

Una richiesta per le statistiche di una tabella restituisce i seguenti campi. Dettagli ed esempi sono riportati nella sezione successiva.

Campo Statistiche tabella Nome API Descrizione
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 pagina Numero medio di colonne per riga
Numero medio di celle per colonna average_cells_per_column Il numero medio di celle memorizzate in tutte le colonne in tutte le righe. Per maggiori dettagli, consulta Numero medio di celle per colonna.
Dati logici in byte logical_data_bytes La quantità di spazio occupata dalla tabella. Per maggiori dettagli, consulta Dati logici in byte.

Le statistiche della tabella includono anche i seguenti campi per ogni famiglia di colonne all'interno della tabella.

Campo delle statistiche della famiglia di colonne Nome API Descrizione
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 pagina Numero medio di colonne per riga.
Numero medio di celle per colonna average_columns_per_row Il numero di celle in ogni colonna, calcolato in media su tutte le righe che hanno colonne nella famiglia di colonne. Per maggiori dettagli ed esempi, vedi Numero medio di celle per colonna.
Dati logici in byte logical_data_bytes La quantità di spazio occupata dalla famiglia di colonne. Per maggiori dettagli, consulta Dati logici in byte.

Dettagli del campo Statistiche 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 di una tabella, Bigtable conteggia il numero di colonne nell'intera tabella e suddivide il valore per il numero di righe della tabella.

Considera ad esempio la tabella seguente. La prima riga ha tre colonne e la seconda riga con 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 contiene cinque colonne e due righe, quindi il numero medio di colonne per riga è 2.5.

Questa statistica della tabella ti dà un'idea generale se la tua tabella è alta ed stretta (poche colonne per riga) o breve e larga (molte colonne in ogni riga).

Numero medio di celle per colonna

Per ottenere il numero medio di celle per colonna di una tabella, Bigtable prende il numero totale di celle archiviate nella tabella e lo divide per il numero di colonne al suo interno.

A seconda dei criteri di progettazione dello schema e della garbage collection, la tabella potrebbe contenere più celle in una colonna o solo una. Il numero di celle che puoi archiviare è legato ai limiti relativi alle dimensioni dei dati descritti nella sezione Dimensioni e limiti dei dati della pagina Quote e limiti.

Se ritieni che questo numero sia più elevato del previsto, esamina le regole di garbage collection per verificare se vengono conservate più celle del necessario. Potresti anche chiedere se i pattern di schema e scrittura devono essere modificati.

Dati logici in byte (tabella)

Questo valore rappresenta il numero approssimativo di byte necessari per leggere l'intera tabella. Questa statistica della tabella ti dà un'idea di quanti byte sono archiviati nella tabella. Conoscere i dati logici in byte può aiutare a comprendere l'impatto della compressione sulla tabella. Ad esempio, se le dimensioni della tabella riportate in Cloud Monitoring corrispondono o più grandi dei dati logici di byte per la tabella, potresti archiviare i dati in un formato non facilmente comprimibile.

Dettagli del campo delle statistiche per la famiglia di colonne

Le statistiche della tabella relative a una tabella includono i seguenti campi per ciascuna famiglia di colonne.

Numero medio di colonne per riga

Questo numero viene calcolato dividendo il numero delle colonne della famiglia di colonne per il numero di righe della tabella.

Considera ad esempio la tabella seguente. La tabella contiene 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. Diviso per tre righe, il numero medio di celle per colonna per family-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 della tabella.

Considera per esempio le seguenti righe nella famiglia di colonne family-D.

Chiave di riga Famiglia di colonne - Famiglia-D
chiave di riga 1 famiglia-D:qualificatore-W (3 celle) famiglia-D:qualificatore-X (1 cella)
chiave di riga 2 famiglia-D:qualificatore-X (10 celle)
chiave di riga 3 family-D:qualifier-W (7 celle) famiglia-D:qualificatore-Y (6 celle)

Il numero di celle nella famiglia delle colonne è 3 + 1 + 10 + 7 + 6 = 27. Questo 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 corrisponde approssimativamente al numero di byte necessari per leggere tutti i dati nella famiglia di colonne al momento della restituzione delle statistiche della tabella.

Esempio di utilizzo dell'interfaccia a riga di comando gcloud

Per visualizzare le statistiche di una tabella denominata sample-table, utilizza il comando bigtable instances table describe:

bigtable instances tables describe TABLE_ID \
    --instance=INSTANCE_ID --view stats

Sostituisci quanto segue:

  • TABLE_ID: l'identificatore permanente della tabella
  • INSTANCE_ID: l'identificatore permanente per l'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

Passaggi successivi