Utilice estas funciones para comprobar cuánto almacenamiento consumen sus bases de datos y tablas. Son útiles para planificar la capacidad, dar seguimiento a los costos e investigar incrementos inesperados en el almacenamiento.
|
Función |
Firma |
Descripción |
|
|
|
Devuelve el tamaño total de almacenamiento de una base de datos, incluidas todas las tablas y los registros de escritura anticipada (WAL). |
|
|
|
Devuelve el tamaño combinado en memoria y disco de una tabla. |
|
|
|
Devuelve un desglose del almacenamiento de la tabla por componente: datos, registros binarios o vistas materializadas. Requiere Hologres V2.1 o posterior. |
PG_SIZE_PRETTY convierte un conteo de bytes sin formato en un formato legible, como kB, MB o GB. Las unidades son potencias de 2: 1 kB = 1,024 bytes, 1 MB = 1,048,576 bytes. Combínela con cualquiera de las funciones anteriores para dar formato a la salida.
PG_DATABASE_SIZE
Devuelve el tamaño total de almacenamiento de la base de datos actual. Utilice esta función para obtener una visión general del consumo de almacenamiento de la base de datos.
Sintaxis
SELECT PG_DATABASE_SIZE('database_name');
Parámetros
|
Parámetro |
Obligatorio |
Descripción |
|
|
Sí |
El nombre de la base de datos que se va a consultar. |
Valor devuelto
Devuelve la suma de:
Los tamaños de almacenamiento de todas las tablas de la base de datos
Los tamaños de los registros WAL generados en la base de datos
Ejemplo
Consulte el tamaño de la base de datos actual en un formato legible:
SELECT PG_SIZE_PRETTY(PG_DATABASE_SIZE(CURRENT_DATABASE()));
PG_RELATION_SIZE
Devuelve el tamaño total de almacenamiento de una tabla, lo cual abarca tanto el espacio en memoria como el espacio físico en disco. Utilice esta función para identificar qué tablas consumen más almacenamiento.
Sintaxis
SELECT PG_RELATION_SIZE('table_name');
Parámetros
|
Parámetro |
Obligatorio |
Descripción |
|
|
Sí |
El nombre de la tabla que se va a consultar. |
Valor devuelto
Devuelve un valor de tipo STRING que indica el tamaño total del espacio en memoria y del espacio físico en disco que ocupa actualmente la tabla.
Devuelve
0si consulta una tabla particionada principal sin especificar una partición secundaria.Devuelve null si el tamaño de almacenamiento de la tabla es 0.
Limitaciones
Solo se admiten tablas internas. Para comprobar una tabla particionada, consulte una tabla particionada secundaria específica, no la tabla particionada principal directamente.
Consultar el tamaño de almacenamiento de una tabla con registro binario habilitado requiere Hologres V1.3.24 o posterior. Para actualizar su instancia u obtener ayuda, consulte Upgrade instances o Obtener soporte en línea para Hologres.
Las métricas de almacenamiento recopiladas desde el directorio de Apsara Distributed File System incluyen tablas, archivos de metadatos y archivos temporales generados por operaciones de escritura, actualización y eliminación. Por ello, los valores de las métricas son ligeramente superiores a los valores que devuelve PG_RELATION_SIZE .
Ejemplos
A continuación se muestran ejemplos que utilizan sample data para funciones de agregación de uso general.
Consulte el tamaño de almacenamiento de una sola tabla:
SELECT PG_SIZE_PRETTY(PG_RELATION_SIZE('example_table'));
Consulte los tamaños de almacenamiento de todas las tablas de una base de datos, ordenados de mayor a menor:
SELECT table_schema || '.' || table_name AS table_full_name,
PG_SIZE_PRETTY(PG_RELATION_SIZE(QUOTE_IDENT(table_schema) || '.' || QUOTE_IDENT(table_name))) AS table_size,
PG_RELATION_SIZE(QUOTE_IDENT(table_schema) || '.' || QUOTE_IDENT(table_name)) AS order_size
FROM information_schema.tables
WHERE table_schema NOT IN ('pg_catalog', 'information_schema', 'hologres')
ORDER BY order_size DESC;
HOLOGRES.HG_RELATION_SIZE
Devuelve el tamaño de almacenamiento de una tabla desglosado por componente: datos, registros binarios o vistas materializadas. Utilice esta función cuando necesite visibilidad detallada sobre lo que impulsa el consumo de almacenamiento; por ejemplo, para determinar si los registros binarios son el principal factor del tamaño de la tabla.
Requiere Hologres V2.1 o posterior. Para actualizar su instancia u obtener ayuda, consulte Upgrade instances o Obtener soporte en línea para Hologres.
Sintaxis
SELECT HOLOGRES.HG_RELATION_SIZE('schema.table'[, 'type']);
Parámetros
|
Parámetro |
Obligatorio |
Descripción |
|
|
Sí |
El nombre completo de la tabla. |
|
|
No |
El componente de almacenamiento que se va a consultar. Valores válidos: |
Valores válidos de type:
|
Valor |
Descripción |
|
|
Tamaño de almacenamiento de los datos de la tabla. |
|
|
Tamaño de almacenamiento de los registros binarios de la tabla. |
|
|
Tamaño de almacenamiento de la vista materializada creada para la tabla, si existe. |
|
|
Tamaño total de almacenamiento de la tabla (datos + registros binarios + vista materializada). |
Ejemplos
A continuación se muestran ejemplos que utilizan sample data para funciones de agregación de uso general.
Consulte el tamaño de almacenamiento de datos de una tabla:
SELECT HOLOGRES.HG_RELATION_SIZE('public.example_table', 'data');
Consulte el tamaño de almacenamiento de los registros binarios de una tabla:
SELECT HOLOGRES.HG_RELATION_SIZE('public.example_table', 'binlog');
Consulte los tamaños de almacenamiento de datos de todas las tablas de una base de datos, ordenados de mayor a menor:
SELECT table_schema || '.' || table_name AS table_full_name,
pg_size_pretty(hologres.hg_relation_size(quote_ident(table_schema) || '.' || quote_ident(table_name), 'data')) AS data_size,
hologres.hg_relation_size(quote_ident(table_schema) || '.' || quote_ident(table_name), 'data') AS order_size
FROM information_schema.tables
WHERE table_schema NOT IN ('pg_catalog', 'information_schema', 'hologres', 'hologres_statistic')
ORDER BY order_size DESC;