Estadísticas de los tamaños de las tablas

Spanner proporciona una tabla integrada, SPANNER_SYS.TABLE_SIZES_STATS_1HOUR que enumera los tamaños de tus tablas y de seguridad dentro de tus bases de datos. El tamaño de la tabla se indica en bytes. Los tamaños de las tablas incluyen versiones de datos. Puedes usar SPANNER_SYS.TABLE_SIZES_STATS_1HOUR para supervisar tu los tamaños de las tablas y los índices a lo largo del tiempo. También puedes supervisar los tamaños de tus índices a medida que los crea o elimina, y cuando los modifica (a medida que inserta más filas en el índice o cuando le agregues columnas nuevas). Además, puedes consultar los tamaños de tus tablas de flujos de cambios.

El almacenamiento de la base de datos se puede supervisar con la opción Almacenamiento total de la base de datos métrica. Puedes ver el desglose de la 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:

  • La página 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 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, ordenada por interval_end. Los intervalos se basan en la hora del reloj, que finaliza en la hora. De forma interna, cada 5 minutos, Spanner recopila de todos los servidores y, luego, los pone a disposición TABLE_SIZES_STATS_1HOUR poco después. Luego, se promedian los datos por hora de reloj. 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 en el que se recopilaron los tamaños de la tabla.
TABLE_NAME STRING Nombre de la tabla o del índice.
USED_BYTES FLOAT64 Tamaño de la tabla en bytes.

Consultas de ejemplo

Esta sección incluye varias instrucciones de SQL de ejemplo que recuperan datos agregados las estadísticas de los tamaños de las tablas. Puedes ejecutar estas instrucciones de SQL con el bibliotecas cliente gcloud spanner o el Consola de Google Cloud.

Consulta las 4 tablas e índices más grandes para el intervalo más reciente

La siguiente consulta muestra las 4 tablas e índices más grandes de la información más reciente intervalo:

    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ífico en las últimas 24 horas

La siguiente consulta devuelve 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 existente 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 SPANNER_SYS.TABLE_SIZES_STATS_1HOUR para los intervalos que abarcan los 30 anteriores días.

¿Qué sigue?