Spanner proporciona una tabla integrada, SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
, que enumera los tamaños de tus tablas y los índices dentro de tus bases de datos. El tamaño de la tabla se indica en bytes. Los tamaños de las tablas incluyen las versiones de datos. Puedes usar SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
para supervisar el tamaño de tu tabla y el índice a lo largo del tiempo. También puedes supervisar los tamaños de tus índices mientras los creas o borras, y cuando los modificas (a medida que insertas más filas en el índice o cuando le agregas columnas nuevas). Además, también puedes ver los tamaños de tus tablas de flujo de cambios.
El almacenamiento de la base de datos se puede supervisar con la métrica Almacenamiento total de la base de datos. Puedes ver el desglose del almacenamiento de la base de datos con SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
.
Disponibilidad
Los datos de SPANNER_SYS
solo están disponibles a través de interfaces de SQL. Por ejemplo:
Página de Spanner Studio de una base de datos en la consola de Google Cloud
El comando
gcloud spanner databases execute-sql
La API de
executeQuery
Otros métodos de lectura única que proporciona Spanner no son compatibles con SPANNER_SYS
.
TABLE_SIZES_STATS_1HOUR
SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
contiene los tamaños de todas las tablas de tu base de datos, ordenados por interval_end
. Los intervalos se basan en tiempos de reloj y finalizan en la hora. De forma interna, cada 5 minutos, Spanner recopila datos de todos los servidores y, luego, los pone a disposición en la tabla TABLE_SIZES_STATS_1HOUR
poco después. Luego, se calcula el promedio de los datos por cada hora del día. Por ejemplo, a las 11:59:30 a.m., TABLE_SIZES_STATS_1HOUR
muestra los tamaños promedio de las tablas del intervalo de 10:00:00 a.m. a 10:59:59 a.m.
Esquema de la tabla
Nombre de la columna | Tipo | Descripción |
---|---|---|
INTERVAL_END |
TIMESTAMP |
Fin del intervalo de tiempo en el que se recopilaron los tamaños de las tablas. |
TABLE_NAME |
STRING |
Es el nombre de la tabla o el índice. |
USED_BYTES |
FLOAT64 |
Es el tamaño de la tabla en bytes. |
Consultas de ejemplo
En esta sección, se incluyen varias instrucciones de SQL de ejemplo que recuperan estadísticas de tamaños de tablas agregados. Puedes ejecutar estas instrucciones de SQL con las bibliotecas cliente, gcloud spanner o la consola deGoogle Cloud .
Consulta las 4 tablas y los índices más grandes del intervalo más reciente
La siguiente consulta muestra las 4 tablas y los 4 índices más grandes del intervalo más reciente:
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;
Resultado de la consulta
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 |
Tendencia del tamaño de las consultas de una tabla o un índice específicos en las últimas 24 horas
La siguiente consulta muestra el tamaño de la tabla en las últimas 24 horas:
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;
Aquí:
table_name
debe ser una tabla o un índice existentes en la base de datos.
Resultado de la consulta
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 |
Retención de datos
Como mínimo, Spanner conserva los datos de SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
para intervalos que abarcan los 30 días anteriores.
¿Qué sigue?
- Obtén más información sobre otras herramientas de introspección.
- Obtén información sobre qué otra información almacena Spanner para cada base de datos en las tablas del esquema de información de la base de datos.
- Obtén más información sobre las prácticas recomendadas de SQL para Spanner.
- Obtén más información sobre Investigación del uso alto de CPU.