更新时间:2026-10-21 GMT+08:00
分享

DBE_HEAT_MAP

接口介绍

DBE_HEAT_MAP根据输入的参数,返回目标数据块中行的最后修改时间等信息,用于直观浏览每一行被判定为冷、热行的依据。该接口属于运维类接口,不做可见性判断,即传入的ctid为已删除的行时,该接口依然会返回当前行在页面上最新的状态。DBE_HEAT_MAP支持的接口请参见表1。跨页透明压缩不支持此高级包,跨页透明压缩表查询结果中行的最后修改时间为空。

表1 DBE_HEAT_MAP

接口名称

描述

DBE_HEAT_MAP.ROW_HEAT_MAP

根据对象所属Schema、数据对象名称、数据对象分区名及ctid获取行的最后修改时间等信息。

  • DBE_HEAT_MAP.ROW_HEAT_MAP

    根据对象所属Schema、数据对象名称、数据对象分区名及ctid获取行的最后修改时间等信息。

    DBE_HEAT_MAP.ROW_HEAT_MAP原型为:

    BE_HEAT_MAP.ROW_HEAT_MAP(
    OWNER           IN VARCHAR2,
    SEGMENT_NAME    IN VARCHAR2,
    PARTITION_NAME  IN VARCHAR2     DEFAULT NULL,
    CTID            IN TEXT,
    V_DEBUG         IN BOOL         DEFAULT FALSE,
    BUCKETID        IN pg_catalog.int2 DEFAULT NULL))
    表2 DBE_HEAT_MAP.ROW_HEAT_MAP接口参数说明

    参数

    描述

    OWNER

    数据对象所属schema。

    SEGMENT_NAME

    数据对象名称。

    PARTITION_NAME

    数据对象分区名,可选参数,默认为NULL。

    CTID

    目标行的ctid,即block_id或row_id。

    V_DEBUG

    debug调试,增加日志打印。

    BUCKETID

    目标行的tablebucketid。

    表3 DBE_HEAT_MAP.ROW_HEAT_MAP输出参数

    参数

    描述

    OWNER

    数据对象的所有者。

    SEGMENT_NAME

    数据对象名称。

    PARTITION_NAME

    数据对象分区名称,可选参数。

    TABLESPACE_NAME

    数据所属的表空间名称。

    FILE_ID

    行所属的绝对文件id。

    RELATIVE_FNO

    行所属的相对文件id(GaussDB中无此逻辑,因此取值同上)。

    CTID

    行的ctid,即block_id或row_id。

    WRITETIME

    行的最后修改时间。

    DBE_HEAT_MAP.ROW_HEAT_MAP 接口只支持分布式数据库中数据节点(DN),其他节点暂不支持。

    示例:
    gaussdb=# ALTER DATABASE set ilm = on;
    gaussdb=# CREATE SCHEMA HEAT_MAP_DATA;
    gaussdb=# SET current_schema=HEAT_MAP_DATA;
    
    gaussdb=# CREATE TABLESPACE example1 RELATIVE LOCATION 'tablespace1';
    gaussdb=# CREATE TABLE HEAT_MAP_DATA.heat_map_table(id INT, value TEXT) TABLESPACE example1;
    gaussdb=# INSERT INTO HEAT_MAP_DATA.heat_map_table VALUES (1, 'test_data_row_1');
    
    gaussdb=# SELECT * FROM DBE_HEAT_MAP.ROW_HEAT_MAP(
        owner         =>  'heat_map_data',
        segment_name  =>  'heat_map_table',
        partition_name  => NULL,
        ctid          =>  '(0,1)');
         owner     |  segment_name  | partition_name | tablespace_name | file_id | relative_fno | ctid  | writetime 
    ---------------+----------------+----------------+-----------------+---------+--------------+-------+-----------
     heat_map_data | heat_map_table |                | example1        |   17291 |        17291 | (0,1) | 
    (1 row)

相关文档