Todos los productos
Search
Centro de documentos

Hologres:View dynamic table schema and lineage

Última actualización: Sep 18, 2026

Cuando inspecciona, audita o depura tablas dinámicas en Hologres, necesita recuperar las definiciones DDL, listar todas las tablas dinámicas de una instancia, rastrear el linaje de datos, comprobar el consumo de almacenamiento y gestionar las tablas de estado que genera la actualización incremental. Esta página describe todas estas tareas.

Tarea

Descripción

Consulte el esquema de una tabla dinámica

Recupere la instrucción DDL de una tabla dinámica específica.

Liste las tablas dinámicas de la instancia actual

Consulte todas las tablas dinámicas y sus modos de actualización.

View data lineage

Rastree las dependencias ascendentes y descendentes mediante la consola o SQL.

View storage details

Compruebe el tamaño de almacenamiento de una tabla dinámica.

Gestione las tablas de estado

Comprenda y supervise la tabla de estado generada para la actualización incremental.

Consulte el esquema de una tabla dinámica

Utilice hg_dump_script para recuperar la instrucción DDL de una tabla dinámica.

SELECT hg_dump_script('[<schema_name>.]<table_name>');

Parámetros

Parámetro

Obligatorio

Descripción

schema_name

No

El nombre del esquema que contiene la tabla dinámica.

table_name

Sí

El nombre de la tabla dinámica.

Liste las tablas dinámicas de la instancia actual

La tabla del sistema hologres.hg_dynamic_table_properties almacena los metadatos de todas las tablas dinámicas de la instancia actual.

Para listar todas las tablas dinámicas y sus modos de actualización:

SELECT dynamic_table_name, property_value
FROM hologres.hg_dynamic_table_properties
WHERE property_key = 'refresh_mode';

Para consultar todos los metadatos de una tabla dinámica específica:

SELECT *
FROM hologres.hg_dynamic_table_properties
WHERE dynamic_table_name = '<dynamic_table_name>';

Columnas en hg_dynamic_table_properties

Columna

Descripción

dynamic_table_name

El nombre de la tabla dinámica.

dynamic_table_namespace

El esquema que contiene la tabla dinámica.

property_key

El nombre de la propiedad de metadatos. Por ejemplo, refresh_mode.

property_value

El valor de la propiedad.

Consulte el linaje de datos

El linaje de datos muestra de qué tablas lee una tabla dinámica (ascendentes) y qué tablas o tablas dinámicas dependen de ella (descendentes). Esta información resulta útil para solucionar retrasos de actualización o evaluar el impacto de los cambios de esquema en un pipeline.

Visualización

Consulte el linaje como un gráfico interactivo en HoloWeb o DataWorks Data Map:

  • HoloWeb: En la consola de HoloWeb, vaya a Table Metadata Management > Dynamic Table Management. En la pestaña Lineage Information, consulte el gráfico de linaje de la tabla dinámica.

  • DataWorks Data Map: DataWorks Data Map recopila y muestra automáticamente el linaje de datos de las tablas dinámicas. Para obtener más información, consulte Data lineage.

Método con SQL

Todas las consultas de linaje utilizan la vista del sistema hologres.hg_dynamic_table_dependencies, que registra las dependencias ascendentes de cada tabla dinámica.

Columnas en hg_dynamic_table_dependencies

Columna

Descripción

dynamic_table_namespace

El esquema que contiene la tabla dinámica.

dynamic_table_name

El nombre de la tabla dinámica.

table_namespace

El esquema de la dependencia ascendente.

table_name

El nombre de la dependencia ascendente.

dependency

El tipo de dependencia. El valor internal_table indica una dependencia interna del sistema; excluya este valor de las consultas de linaje.

Consulte el linaje de datos de una sola tabla dinámica

SELECT
    d.*,
    CASE WHEN k.dynamic_table_namespace IS NOT NULL THEN
        'd'
    ELSE
        c.relkind
    END
FROM
    hologres.hg_dynamic_table_dependencies d
    LEFT JOIN pg_namespace n ON n.nspname = d.table_namespace
    LEFT JOIN pg_class c ON c.relnamespace = n.oid
        AND c.relname = d.table_name
    LEFT JOIN (
        SELECT
            dynamic_table_namespace,
            dynamic_table_name
        FROM
            hologres.hg_dynamic_table_properties
        GROUP BY
            1,
            2) k ON k.dynamic_table_namespace = d.table_namespace
        AND k.dynamic_table_name = d.table_name
WHERE
    d.dynamic_table_namespace = '<schema_name>'
    AND d.dynamic_table_name = '<dynamic_table_name>'
    AND d.dependency <> 'internal_table';

Consulte el linaje de datos de todas las tablas dinámicas

Elimine los filtros dynamic_table_namespace y dynamic_table_name para devolver las dependencias de todas las tablas dinámicas de la instancia:

SELECT
    d.*,
    CASE WHEN k.dynamic_table_namespace IS NOT NULL THEN
        'd'
    ELSE
        c.relkind
    END
FROM
    hologres.hg_dynamic_table_dependencies d
    LEFT JOIN pg_namespace n ON n.nspname = d.table_namespace
    LEFT JOIN pg_class c ON c.relnamespace = n.oid
        AND c.relname = d.table_name
    LEFT JOIN (
        SELECT
            dynamic_table_namespace,
            dynamic_table_name
        FROM
            hologres.hg_dynamic_table_properties
        GROUP BY
            1,
            2) k ON k.dynamic_table_namespace = d.table_namespace
        AND k.dynamic_table_name = d.table_name
WHERE
    d.dependency <> 'internal_table';

Comprensión de base_table_type

La expresión CASE obtiene base_table_type de dos fuentes. Si la dependencia es también una tabla dinámica (presente en hg_dynamic_table_properties), el tipo es 'd'. De lo contrario, el tipo proviene de pg_class.relkind. A continuación se describen los valores posibles.

Valor

Tipo de tabla

r

Tabla ordinaria

v

Vista

m

Vista materializada

f

Tabla externa

d

Tabla dinámica

Consulte los detalles de almacenamiento

Utilice la función hologres.hg_relation_size para consultar el tamaño de almacenamiento y los detalles de una tabla dinámica. Para obtener más información, consulte View table storage details.

Gestione las tablas de estado

Cuando una tabla dinámica utiliza la actualización incremental, Hologres crea automáticamente una tabla de estado en la capa subyacente para acelerar el cálculo de datos. Esta tabla de estado almacena los resultados de agregación.

Comportamientos clave:

  • La tabla de estado se almacena en el grupo de tablas predeterminado y no admite resharding.

  • Si cambia el modo de actualización de incremental a completo, la tabla de estado se vacía de forma predeterminada.

Para obtener más información sobre la actualización incremental y completa, consulte Dynamic Table.

Consulte el uso de almacenamiento de la tabla de estado

Ejecute el siguiente comando SQL para obtener el tamaño de almacenamiento de la tabla de estado. El almacenamiento se factura a la misma tarifa que una tabla estándar. Para obtener más información, consulte Descripción general de facturación.

SELECT pg_size_pretty(hologres.hg_dynamic_table_state_size('<dynamic_table_name>'));