日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

查看Dynamic Table表結構和血緣

本文將介紹如何查看Dynamic Table的表結構、當前實例下的所有Dynamic Table、Dynamic Table的血緣關系、Dynamic Table的存儲明細以及狀態表(State)的管理。

查看Dynamic Table表結構

  • 語法

    SELECT hg_dump_script('[<schema_name>.]<table_name>');
  • 參數說明

    • schema_name:可選,Schema名稱。

    • table_name:必填,Dynamic Table的表名稱。

查看當前實例下的Dynamic Table

您可以通過hologres.hg_dynamic_table_properties系統表,查看當前實例中所有Dynamic Table以及設置的刷新模式。SQL命令如下。

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

您還可以通過如下SQL命令,查看指定Dynamic Table的所有元數據。

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

查看Dynamic Table的血緣

查看單個Dynamic Table表的血緣

您可以通過如下SQL命令,查看指定Dynamic Table的血緣信息。

--查看單個表血緣
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';

查看所有Dynamic Table的血緣

您可以通過如下SQL命令,查看當前實例中所有Dynamic Table的血緣信息。

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';
說明

base_table_type的取值映射通常如下:

  • r:ordinary table(普通表)。

  • v:view(視圖)。

  • m:materialized view(物化視圖)。

  • f:foreign table(外部表)。

  • d:Dynamic Table。

查看Dynamic Table存儲明細

Dynamic Table表支持通過hologres.hg_relation_size函數查看存儲大小以及明細,關于hologres.hg_relation_size函數使用詳情,請參見查看表存儲明細

狀態表(State)管理

增量刷新的Dynamic Table,為了加速數據計算,會在底層生成一張狀態表(State),用于存放聚合處理結果,默認存儲于默認Table Group中,不支持執行重新分片(Resharding),詳情見Dynamic Table概述。此外,如果將刷新模式修改為全量刷新,則狀態表(State)將默認被清理。

查看狀態表(State)的存儲量

通過如下SQL命令,查看狀態表的存儲大小,其存儲計費規則與普通表一致,詳情請參見計費概述

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