Spanner fornisce una tabella integrata,SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
che elenca le dimensioni delle tabelle e degli indici all'interno dei database. Le dimensioni della tabella sono espresse in byte. Le dimensioni delle tabelle includono le versioni dei dati. Puoi utilizzare SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
per monitorare le dimensioni delle tabelle e degli indici nel tempo. Puoi anche monitorare le dimensioni degli indici mentre li crei/elimini e quando li modifichi (quando inserisci altre righe nell'indice o quando aggiungi nuove colonne). Inoltre, puoi anche esaminare le dimensioni delle tabelle degli stream di modifiche.
Lo spazio di archiviazione del database può essere monitorato con la metrica Spazio di archiviazione totale del database. Puoi visualizzare la suddivisione dello spazio di archiviazione del database con SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
.
Disponibilità
I dati di SPANNER_SYS
sono disponibili solo tramite interfacce SQL. Ad esempio:
Pagina Spanner Studio di un database nella console Google Cloud
Il comando
gcloud spanner databases execute-sql
L'API
executeQuery
Gli altri metodi di lettura singola forniti da Spanner non supportanoSPANNER_SYS
.
TABLE_SIZES_STATS_1HOUR
SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
contiene le dimensioni di tutte le tabelle del
tuo database, ordinate in base a interval_end
. Gli intervalli si basano sull'ora,
e terminano alle ore piene. All'interno, ogni 5 minuti Spanner raccoglie i dati da tutti i server e li rende disponibili nella tabella TABLE_SIZES_STATS_1HOUR
poco dopo. I dati vengono poi mediati per ogni ora. Ad esempio, alle 11:59:30, TABLE_SIZES_STATS_1HOUR
mostra le dimensioni medie delle tabelle nell'intervallo compreso tra le 10:00:00 e le 10:59:59.
Schema tabella
Nome colonna | Tipo | Descrizione |
---|---|---|
INTERVAL_END |
TIMESTAMP |
Fine dell'intervallo di tempo in cui sono state raccolte le dimensioni delle tabelle. |
TABLE_NAME |
STRING |
Nome della tabella o dell'indice. |
USED_BYTES |
FLOAT64 |
Dimensioni della tabella in byte. |
Esempi di query
Questa sezione include diversi esempi di istruzioni SQL che recuperano le statistiche aggregate delle dimensioni delle tabelle. Puoi eseguire queste istruzioni SQL utilizzando le librerie client, gcloud spanner o la console Google Cloud.
Esegui query sulle quattro tabelle e sugli indici più grandi per l'intervallo più recente
La seguente query restituisce le quattro tabelle e gli indici più grandi per l'intervallo più recente:
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 della query
interval_end | nome_tabella | 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 delle query per una tabella o un indice specifici per le 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 della 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
Come minimo, Spanner conserva i dati per
SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
per intervalli che coprono i 30 giorni
precedenti.
Passaggi successivi
- Scopri altri strumenti di introspezione.
- Scopri altre informazioni archiviate da Spanner per ogni database nelle tabelle dello schema delle informazioni del database.
- Scopri di più sulle best practice per SQL per Spanner.
- Scopri di più su come esaminare l'utilizzo elevato della CPU.