Todos los productos
Search
Centro de documentos

:Consultar el tamaño de almacenamiento de tablas y bases de datos

Última actualización: Sep 21, 2026

Hologres es compatible con PostgreSQL y ofrece funciones para consultar el tamaño de almacenamiento de las tablas y las bases de datos. En este tema se describe cómo usar comandos SQL para ejecutar estas consultas.

Límites

  • Solo puede consultar el tamaño de almacenamiento de las tablas internas. No se admite la consulta directa de una tabla padre particionada; esta devuelve 0. Para consultar el tamaño de almacenamiento de una tabla particionada, debe consultar una tabla hija particionada específica. Si el tamaño de almacenamiento de una tabla es 0, la consulta devuelve un valor nulo.

  • En Hologres V1.3.24 y versiones posteriores, puede usar la función pg_relation_size para consultar el tamaño de almacenamiento del binlog en las tablas que tienen habilitado el binlog de Hologres.

  • La función pg_relation_size calcula el tamaño de almacenamiento de una tabla. Sin embargo, las métricas de monitoreo miden el tamaño total de almacenamiento de archivos de la instancia en el directorio Pangu. Este directorio incluye el almacenamiento de tablas, los archivos de metadatos y los archivos temporales generados por las operaciones de escritura, actualización y eliminación. Por lo tanto, el tamaño de almacenamiento que reportan las métricas de monitoreo es ligeramente mayor que el resultado que devuelve la función pg_relation_size.

Consultar el tamaño de almacenamiento de una tabla

  • Sintaxis

    SELECT pg_relation_size('table_name');--Returns the size in bytes.
  • Parámetros

    Parámetro

    Descripción

    table_name

    El nombre de la tabla que se va a consultar en la base de datos actual.

  • Valor devuelto: representa el espacio que ocupa la tabla en disco y en memoria al momento de la consulta.

    Para mejorar la legibilidad, use la función pg_size_pretty en la consulta. A continuación se muestra la sintaxis:

    --View the storage size of a single table
    SELECT pg_size_pretty(pg_relation_size('table_name'));
    
    --View the storage size of all tables
    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;

Consultar el tamaño de almacenamiento de un esquema

  • Notas de uso

    Puede calcular el tamaño total de almacenamiento de todas las tablas dentro de un esquema específico.

  • Sintaxis

    SELECT table_schema, pg_size_pretty(SUM(pg_relation_size(quote_ident(table_schema) || '.' || quote_ident(table_name))::decimal)) AS schema_size
    FROM information_schema.tables 
    WHERE table_schema = '<schema_name>'
    GROUP BY table_schema;
  • Parámetros

    Parámetro

    Descripción

    schema_name

    El nombre del esquema que se va a consultar.

  • Valor devuelto: el comando devuelve el tamaño total de almacenamiento en bytes.

Consultar el tamaño de almacenamiento de una base de datos

  • Notas de uso

    Solo puede consultar el tamaño de almacenamiento de la base de datos a la que está conectado actualmente.

  • Sintaxis

    SELECT pg_database_size(current_database()); --Returns the size in bytes.
  • Parámetros

    Parámetro

    Descripción

    current_database

    Representa la base de datos actual. No necesita reemplazar este parámetro. Ejecute el comando directamente para consultar el tamaño de almacenamiento de la base de datos actual.

  • Valor devuelto: la función devuelve el tamaño total de almacenamiento de la base de datos en bytes. Este tamaño incluye todas las tablas de Hologres y el registro previo a escritura (WAL).

    Para mejorar la legibilidad, use la función pg_size_pretty. A continuación se muestra la sintaxis:

    SELECT pg_size_pretty(pg_database_size(current_database())); --Returns the size in a human-readable format, such as KB or MB.

Consultar los detalles de almacenamiento de una tabla

En Hologres V2.1 y versiones posteriores, puede usar la función hologres.hg_relation_size para consultar un desglose detallado del almacenamiento de una tabla, incluidos sus datos, su binlog y otros componentes.

  • Límites

    La función hologres.hg_relation_size solo es compatible con instancias de Hologres V2.1 y versiones posteriores.

  • Sintaxis

    SELECT hologres.hg_relation_size('<schema.table>','[data|binlog|mv|all]') ;
  • Parámetros

    Parámetro

    Descripción

    schema.table

    El nombre del esquema y el nombre de la tabla.

    [data|binlog|mv|all]

    Parámetro opcional. Valores válidos:

    • data: el tamaño de almacenamiento de los datos de la tabla.

    • binlog: el tamaño de almacenamiento del binlog de la tabla.

    • mv: el tamaño de almacenamiento de la vista materializada de la tabla.

    • all: el tamaño total de almacenamiento de la tabla.

  • Ejemplos

    • Ejemplo 1: consulte el tamaño de almacenamiento de datos de una sola tabla.

      SELECT hologres.hg_relation_size('<schema.table>','data') ;
    • Ejemplo 2: consulte el tamaño de almacenamiento del binlog de una sola tabla.

      SELECT hologres.hg_relation_size('<schema.table>','binlog') ;
    • Ejemplo 3: consulte el tamaño de almacenamiento de todas las tablas de una base de datos.

      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;