ADMIN_GET_TAB_COMPRESS_INFO_V97 表函数-返回压缩信息

ADMIN_GET_TAB_COMPRESS_INFO_V97 表函数返回表,具体化查询表 (MQT) 和层次结构表的压缩信息。

注: 不推荐使用此表函数,并将其替换为 ADMIN_GET_TAB_COMPRESS_INFO 表函数ADMIN_GET_TAB_DICTIONARY_INFO 表函数

请参阅 表 1 表,以获取可返回的完整信息列表。

语法

Read syntax diagramSkip visual syntax diagramADMIN_GET_TAB_COMPRESS_INFO_V97(tabschema ,tabname,execmode)

模式为 SYSPROC。

表函数参数

tabschema
类型为 VARCHAR (128) 的输入参数,用于指定模式名称。
选项卡名称
类型为 VARCHAR (128) 的输入参数,用于指定表名,具体化查询表名或层次结构表名。
执行方式
类型为 VARCHAR (30) 的输入参数,用于指定执行方式。 执行方式可以是下列其中一种方式:
  • "REPORT" -- 报告截至上次生成的压缩信息。 这是缺省值。
  • "ESTIMATE" -- 根据当前表生成新的压缩信息。

权限

需要下列其中一项权限才能执行此例程:
  • 对例程的 EXECUTE 特权
  • DATAACCESS 权限
  • DBADM 权限
  • SQLADM 权限

缺省 PUBLIC 特权

示例

示例 1: 检索表 SIMAP2.STAFF 的现有压缩信息
  SELECT * 
    FROM TABLE (
      SYSPROC.ADMIN_GET_TAB_COMPRESS_INFO_V97('SIMAP2', 'STAFF', 'REPORT')) 
    AS T
以下是此查询的输出示例:
TABSCHEMA TABNAME DBPARTITIONNUM DATA_PARTITION_ID COMPRESS_ATTR DICT_BUILDER ...
--------- ------- -------------- ----------------- ------------- ------------ ...
SIMAP2    STAFF                0                 4 Y             REORG        ...
SIMAP2    STAFF                0                 4 Y             NOT BUILT    ...

2 record(s) selected.
此查询的输出 (续):
DICT_BUILD_TIMESTAMP       COMPRESS_DICT_SIZE EXPAND_DICT_SIZE ROWS_SAMPLED ...
-------------------------- ------------------ ---------------- ------------ ...
2009-03-31-12.19.30.000000              13312             5296           35 ...
-                                           0                0            0 ...
此查询的输出 (续):
PAGES_SAVED_PERCENT BYTES_SAVED_PERCENT AVG_COMPRESS_REC_LENGTH OBJECT_TYPE
------------------- ------------------- ----------------------- -----------
                 38                  38                      27 DATA       
                  0                   0                       0 XML        
示例 2: 从现在开始检索表 SIMAP2.STAFF 的估计压缩信息。
  SELECT * 
    FROM TABLE (
      SYSPROC.ADMIN_GET_TAB_COMPRESS_INFO_V97('SIMAP2', 'STAFF', 'ESTIMATE'))
    AS T
以下是此查询的输出示例:
TABSCHEMA TABNAME DBPARTITIONNUM DATA_PARTITION_ID COMPRESS_ATTR DICT_BUILDER   ...
--------- ------- -------------- ----------------- ------------- -------------- ...
SIMAP2    STAFF                0                 4 Y             TABLE FUNCTION ...
SIMAP2    STAFF                0                 4 Y             TABLE FUNCTION ...

2 record(s) selected.
此查询的输出 (续):
DICT_BUILD_TIMESTAMP       COMPRESS_DICT_SIZE EXPAND_DICT_SIZE ROWS_SAMPLED ...
-------------------------- ------------------ ---------------- ------------ ...
2009-03-31-12.27.06.000000              13312             5296           35 ...
2009-03-31-12.27.06.000000              13312             9544            8 ...
此查询的输出 (续):
PAGES_SAVED_PERCENT BYTES_SAVED_PERCENT AVG_COMPRESS_REC_LENGTH OBJECT_TYPE
------------------- ------------------- ----------------------- -----------
                 38                  38                      27 DATA       
                 75                  75                      95 XML        
示例 3: 确定模式 SIMAP2 中表中所有对象的总字典大小
  SELECT TABSCHEMA, TABNAME, OBJECT_TYPE, DICT_BUILDER, (
       COMPRESS_DICT_SIZE+EXPAND_DICT_SIZE) 
       AS TOTAL_DICT_SIZE, DBPARTITIONNUM, DATA_PARTITION_ID 
  FROM TABLE (
    SYSPROC.ADMIN_GET_TAB_COMPRESS_INFO_V97('SIMAP2', '', 'REPORT')) 
  AS T
此查询的输出:
TABSCHEMA    TABNAME      OBJECT_TYPE  DICT_BUILDER ...
------------ ---------- -------------- ------------ ...
SIMAP2       ACT          DATA         NOT BUILT    ...
SIMAP2       ACT          XML          NOT BUILT    ...
SIMAP2       ADEFUSR      DATA         INSPECT      ...
SIMAP2       ADEFUSR      XML          NOT BUILT    ...
...
SIMAP2       CUSTOMER     DATA         REORG        ...
SIMAP2       CUSTOMER     XML          REORG        ...
SIMAP2       DEPARTMENT   DATA         NOT BUILT    ...
SIMAP2       DEPARTMENT   XML          NOT BUILT    ...
...
SIMAP2       STAFF        DATA         REORG        ...
SIMAP2       STAFF        XML          NOT BUILT    ...
SIMAP2       SUPPLIERS    DATA         TABLE GROWTH ...
SIMAP2       SUPPLIERS    XML          NOT BUILT    ...

44 record(s) selected.
此查询的输出 (续):
TOTAL_DICT_SIZE DBPARTITIONNUM DATA_PARTITION_ID
--------------- -------------- -----------------
              0              0                 0
              0              0                 0
           1890              0                 0
              0              0                 0
...
           6968              0                 1
          24256              0                 1
              0              1                 0
              0              1                 0
...
          18608              0                 4
              0              0                 4
           6960              0                 2
              0              0                 2
示例 4: 查看 SIMAP2 模式中表的字典信息的报告。
  SELECT * FROM TABLE (
      SYSPROC.ADMIN_GET_TAB_COMPRESS_INFO_V97('SIMAP2', '', 'REPORT')) 
    AS T
此查询的输出:
TABSCHEMA TABNAME   DBPARTITIONNUM DATA_PARTITION_ID COMPRESS_ATTR DICT_BUILDER ...
--------- --------- -------------- ----------------- ------------- ------------ ...
SIMAP2    ACT                    0                 0 N             NOT BUILT    ...
SIMAP2    ACT                    0                 0 N             NOT BUILT    ...
SIMAP2    ADEFUSR                0                 0 N             INSPECT      ...
SIMAP2    ADEFUSR                0                 0 N             NOT BUILT    ...
...
SIMAP2    CUSTOMER               0                 1 Y             REORG        ...
SIMAP2    CUSTOMER               0                 1 Y             REORG        ...
...
SIMAP2    STAFF                  0                 4 Y             REORG        ...
SIMAP2    STAFF                  0                 4 Y             NOT BUILT    ...
SIMAP2    SUPPLIERS              0                 2 N             NOT BUILT    ...
SIMAP2    SUPPLIERS              0                 2 N             NOT BUILT    ...

44 record(s) selected.
此查询的输出 (续):
DICT_BUILD_TIMESTAMP       COMPRESS_DICT_SIZE EXPAND_DICT_SIZE ROWS_SAMPLED ...
-------------------------- ------------------ ---------------- ------------ ...
-                                           0                0            0 ...
-                                           0                0            0 ...
2009-03-31-12.11.02.000000                290             1890           22 ...
-                                           0                0            0 ...
...
2009-03-31-11.08.18.000000               3968             3000            6 ...
2009-03-31-11.08.18.000000              13312            10944            6 ...
...
2009-03-31-12.19.30.000000              13312             5296           35 ...
-                                           0                0            0 ...
-                                           0                0            0 ...
-                                           0                0            0 ...

此查询的输出 (续):

PAGES_SAVED_PERCENT BYTES_SAVED_PERCENT AVG_COMPRESS_REC_LENGTH OBJECT_TYPE
------------------- ------------------- ----------------------- -----------
                  0                   0                       0 DATA
                  0                   0                       0 XML
                 20                  25                      21 DATA
                  0                   0                       0 XML
...
                 70                  70                      31 DATA
                 66                  66                     235 XML
...
                 38                  38                      27 DATA
                  0                   0                       0 XML
                  0                   0                       0 DATA
                  0                   0                       0 XML
示例 5: 查看 SIMAP2 模式中表的 DATA 对象的字典信息的报告。
  SELECT * FROM TABLE (
      SYSPROC.ADMIN_GET_TAB_COMPRESS_INFO_V97('SIMAP2','','REPORT'))
    WHERE OBJECT_TYPE='DATA'
此查询的输出:
TABSCHEMA TABNAME   DBPARTITIONNUM DATA_PARTITION_ID COMPRESS_ATTR DICT_BUILDER ...
--------- --------- -------------- ----------------- ------------- ------------ ...
SIMAP2    ACT                    0                 0 N             NOT BUILT    ...
SIMAP2    ADEFUSR                0                 0 N             INSPECT      ...
...
SIMAP2    CUSTOMER               0                 1 Y             REORG        ...
SIMAP2    DEPARTMENT             1                 0 N             NOT BUILT    ...
...
SIMAP2    STAFF                  0                 4 Y             REORG        ...
SIMAP2    SUPPLIERS              0                 2 N             NOT BUILT    ...

  22 record(s) selected.
此查询的输出 (续):
DICT_BUILD_TIMESTAMP       COMPRESS_DICT_SIZE EXPAND_DICT_SIZE ROWS_SAMPLED...
-------------------------- ------------------ ---------------- ------------ ...
-                                           0                0            0 ...
2009-03-31-12.11.02.000000                290             1890           22 ...
...
2009-03-31-11.08.18.000000               3968             3000            6 ...
-                                           0                0            0 ...
...
2009-03-31-12.19.30.000000              13312             5296           35 ...
-                                           0                0            0 ...
此查询的输出 (续):
PAGES_SAVED_PERCENT BYTES_SAVED_PERCENT AVG_COMPRESS_REC_LENGTH OBJECT_TYPE
------------------- ------------------- ----------------------- -----------
                  0                   0                       0 DATA       
                 20                  25                      21 DATA       

                 70                  70                      31 DATA       
                  0                   0                       0 DATA       

                 38                  38                      27 DATA       
                  0                   0                       0 DATA       
示例 6: 在 SIMAP2 模式中查看 CUSTOMER 表的 XML 对象的字典信息的报告。
  SELECT * FROM TABLE (
      SYSPROC.ADMIN_GET_TAB_COMPRESS_INFO_V97('SIMAP2', 'CUSTOMER',  'REPORT'))
    WHERE OBJECT_TYPE='XML'
此查询的输出:
TABSCHEMA TABNAME   DBPARTITIONNUM DATA_PARTITION_ID COMPRESS_ATTR DICT_BUILDER ...
--------- --------- -------------- ----------------- ------------- ------------ ...
SIMAP2    CUSTOMER               0                 1 Y             REORG        ...
此查询的输出 (续):
DICT_BUILD_TIMESTAMP       COMPRESS_DICT_SIZE EXPAND_DICT_SIZE ROWS_SAMPLED ...
-------------------------- ------------------ ---------------- ------------ ...
2009-03-31-11.08.18.000000              13312            10944            6 ...
此查询的输出 (续):
PAGES_SAVED_PERCENT BYTES_SAVED_PERCENT AVG_COMPRESS_REC_LENGTH OBJECT_TYPE
------------------- ------------------- ----------------------- -----------
                 66                  66                     235 XML        

使用说明

  • 如果同时指定了 tabschematabname ,那么将仅返回该特定表的信息。
  • 如果指定了 tabschema ,但 tabname 为空 (") 或 NULL ,将返回给定模式中所有表的信息。
  • 如果 tabschema 为空 (") 或者指定了 NULL 和 tabname ,将返回错误。 要检索特定表的信息,必须通过模式和表名来标识该表。
  • 如果 tabschematabname 都为空 (") 或 NULL ,将返回所有表的信息。
  • 如果 tabschematabname 不存在,或者 tabname 不对应于表名 (类型 T) ,具体化查询表名 (类型 S) 或层次结构表名 (类型 H) ,那么将返回空结果集。
  • 当 ADMIN_GET_TAB_COMPRESS_INFO_V97 表函数正在检索给定表的数据时,它将获取对 SYSTABLES 的相应行的共享锁定,以确保返回的数据的一致性 (例如,确保在检索该表的信息时不改变该表)。 只有在检索表的压缩信息所需的时间内,而不是在表函数调用的持续时间内,才会挂起锁定。
  • 如果查询的表是非 XML 表,那么将返回针对 XML 存储对象 (XDA) 的行。

返回的信息

表 1. ADMIN_GET_TAB_COMPRESS_INFO_V97 返回的信息
列名 数据类型 描述
TABSCHEMA VARCHAR(128) table_schema -“表模式名”监视元素
TABNAME VARCHAR(128) table_name -“表名”监视元素
DBPARTITIONNUM SMALLINT dbpartitionnum -“数据库分区号”监视元素
DATA_PARTITION_ID INTEGER data_partition_id -“数据分区标识”监视元素
COMPRESS_ATTR CHAR(1) 表上 COMPRESS 属性的状态,可以是下列其中一个值:
  • 'Y' = 行压缩设置为 yes
  • "N" = 行压缩设置为 "否"
DICT_BUILDER VARCHAR(30) 用于构建字典的代码路径,该字典可以是下列其中一个值:
  • '检查' = 检查 ROWCOMPESTIMATE
  • "LOAD" = LOAD INSERT/REPLACE
  • "NOT BUILT" = 没有可用的字典
  • "REDISTRIBUTE" = REDISTRIBUTE
  • "REORG" = REORG RESETDICTIONARY
  • '表增长' = INSERT
  • 'TABLE FUNCTION' = 由 "ESTIMATE" 选项的表函数构建
DICT_BUILD_TIMESTAMP TIMESTAMP 构建字典的时间戳记。 时间戳记粒度为秒。 如果没有可用的字典,那么时间戳记为 NULL。
COMPRESS_DICT_SIZE BIGINT 压缩字典的大小 (以字节计)。
EXPAND_DICT_SIZE BIGINT 扩展字典的大小 (以字节计)。 如果存在历史字典,那么此值是当前字典大小与历史字典大小的总和。
已采样的行 BIGINT 帮助构建字典的记录数。 具有压缩字典的已迁移表将在此列中返回 NULL。
PAGES_SAVED_PERCENT SMALLINT 从压缩中节省的页面百分比。 此信息仅基于样本缓冲区中的记录数据。 具有压缩字典的已迁移表将在此列中返回 NULL。
BYTES_SAVED_PERCENT SMALLINT 压缩节省的字节数所占的百分比。 此信息仅基于样本缓冲区中的记录数据。 具有压缩字典的已迁移表将在此列中返回 NULL。
AVG_COMPRESS_REC_LENGTH SMALLINT 参与构建字典的记录的平均压缩记录长度。 具有压缩字典的已迁移表将在此列中返回 NULL。
OBJECT_TYPE VARCHAR(4) objtype -“对象类型”监视元素