Statistiche sulle dimensioni delle tabelle

Spanner offre una tabella integrata, SPANNER_SYS.TABLE_SIZES_STATS_1HOUR che elenca le dimensioni delle tabelle e indicizzabili all'interno dei tuoi database. Le dimensioni della tabella sono in byte. Le dimensioni della tabella includono le versioni dei dati. Puoi utilizzare SPANNER_SYS.TABLE_SIZES_STATS_1HOUR per monitorare dimensioni di tabelle e indici nel tempo. Puoi anche monitorare le dimensioni degli indici quando li crei/elimini e quando li modifichi (man mano che inserisci più righe all'indice o quando vi aggiungi nuove colonne). Inoltre, puoi anche dare un'occhiata le dimensioni delle tabelle delle modifiche in tempo reale.

Lo spazio di archiviazione dei database può essere monitorato con il valore Spazio di archiviazione totale dei database . Puoi vedere un'analisi dettagliata archiviazione del database con SPANNER_SYS.TABLE_SIZES_STATS_1HOUR.

Disponibilità

I dati SPANNER_SYS sono disponibili solo tramite le interfacce SQL. Ad esempio:

  • Pagina Spanner Studio di un database nella console Google Cloud

  • Il comando gcloud spanner databases execute-sql

  • API executeQuery

Gli altri metodi di lettura singoli forniti da Spanner non supportano SPANNER_SYS.

TABLE_SIZES_STATS_1HOUR

SPANNER_SYS.TABLE_SIZES_STATS_1HOUR contiene le dimensioni di tutte le tabelle in tuo database, ordinato per interval_end. Gli intervalli sono basati su orari di orologio, che termina all'ora. Internamente, ogni 5 minuti, Spanner raccoglie da tutti i server e poi li rende disponibili nei TABLE_SIZES_STATS_1HOUR poco dopo. Viene quindi calcolata la media dei dati per ogni ora di orologio. Ad esempio, alle 11:59:30 TABLE_SIZES_STATS_1HOUR mostra le dimensioni medie della tabella nell'intervallo 10:00:00 AM - 10:59:59 AM.

Schema tabella

Nome colonna Tipo Descrizione
INTERVAL_END TIMESTAMP Fine dell'intervallo di tempo in cui sono state raccolte le dimensioni della tabella.
TABLE_NAME STRING Nome della tabella o dell'indice.
USED_BYTES FLOAT64 Dimensioni della tabella in byte.

Esempi di query

Questa sezione include diverse istruzioni SQL di esempio che recuperano i dati aggregati statistiche sulle dimensioni delle tabelle. Puoi eseguire queste istruzioni SQL utilizzando librerie client, gcloud spanner, o il Console Google Cloud.

Query su 4 tabelle e indici più grandi per l'intervallo più recente

La seguente query restituisce le 4 tabelle e indici più grandi per la query intervallo:

    SELECT interval_end,
          table_name,
          used_bytes
    FROM spanner_sys.table_sizes_stats_1hour
    WHERE interval_end = (
          SELECT MAX(interval_end)
          FROM spanner_sys.table_sizes_stats_1hour)
    ORDER BY used_bytes DESC
    LIMIT 4;
  

Output query
interval_end table_name used_bytes
2022-11-15 13:00:00-07:00 order_item 60495552
2022-11-15 13:00:00-07:00 orders 13350000
2022-11-15 13:00:00-07:00 item_inventory 2094549
2022-11-15 13:00:00-07:00 customer 870000

Tendenza delle dimensioni della query per una tabella o un indice specifico nelle ultime 24 ore

La seguente query restituisce le dimensioni della tabella nelle ultime 24 ore:

GoogleSQL

SELECT interval_end, used_bytes
  FROM spanner_sys.table_sizes_stats_1hour
WHERE interval_end > TIMESTAMP_ADD(CURRENT_TIMESTAMP(), INTERVAL -24 HOUR)
  AND table_name = table_name
ORDER BY interval_end DESC;

Dove:

  • table_name deve essere una tabella o un indice esistente nel database.
Output query
interval_end used_bytes
2022-11-15 13:00:00-07:00 13350000
2022-11-15 12:00:00-07:00 13350000
2022-11-15 11:00:00-07:00 13350000
2022-11-15 10:00:00-07:00 13350000
2022-11-15 09:00:00-07:00 13350000
2022-11-15 08:00:00-07:00 12350000
2022-11-15 07:00:00-07:00 12350000
2022-11-15 06:00:00-07:00 12350000
2022-11-15 05:00:00-07:00 11350000
2022-11-15 04:00:00-07:00 11350000
2022-11-15 03:00:00-07:00 11350000
2022-11-15 02:00:00-07:00 11350000
2022-11-15 01:00:00-07:00 11350000
2022-11-15 00:00:00-07:00 10350000
2022-11-14 23:00:00-07:00 10350000
2022-11-14 22:00:00-07:00 10350000
2022-11-14 21:00:00-07:00 10350000
2022-11-14 20:00:00-07:00 10350000
2022-11-14 19:00:00-07:00 10350000
2022-11-14 18:00:00-07:00 10350000
2022-11-14 17:00:00-07:00 10350000
2022-11-14 16:00:00-07:00 10350000
2022-11-14 15:00:00-07:00 10350000
2022-11-14 14:00:00-07:00 10350000
2022-11-14 13:00:00-07:00 10350000

Conservazione dei dati

Spanner conserva i dati almeno per SPANNER_SYS.TABLE_SIZES_STATS_1HOUR per intervalli che coprono i 30 precedenti giorni.

Passaggi successivi