ADMIN_GET_TAB_COMPRESS_INFO_V97 表函数-返回压缩信息
ADMIN_GET_TAB_COMPRESS_INFO_V97 表函数返回表,具体化查询表 (MQT) 和层次结构表的压缩信息。
请参阅 表 1 表,以获取可返回的完整信息列表。
语法
模式为 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 使用说明
- 如果同时指定了 tabschema 和 tabname ,那么将仅返回该特定表的信息。
- 如果指定了 tabschema ,但 tabname 为空 (") 或 NULL ,将返回给定模式中所有表的信息。
- 如果 tabschema 为空 (") 或者指定了 NULL 和 tabname ,将返回错误。 要检索特定表的信息,必须通过模式和表名来标识该表。
- 如果 tabschema 和 tabname 都为空 (") 或 NULL ,将返回所有表的信息。
- 如果 tabschema 或 tabname 不存在,或者 tabname 不对应于表名 (类型 T) ,具体化查询表名 (类型 S) 或层次结构表名 (类型 H) ,那么将返回空结果集。
- 当 ADMIN_GET_TAB_COMPRESS_INFO_V97 表函数正在检索给定表的数据时,它将获取对 SYSTABLES 的相应行的共享锁定,以确保返回的数据的一致性 (例如,确保在检索该表的信息时不改变该表)。 只有在检索表的压缩信息所需的时间内,而不是在表函数调用的持续时间内,才会挂起锁定。
- 如果查询的表是非 XML 表,那么将返回针对 XML 存储对象 (XDA) 的行。
返回的信息
| 列名 | 数据类型 | 描述 |
|---|---|---|
| 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 属性的状态,可以是下列其中一个值:
|
| DICT_BUILDER | VARCHAR(30) | 用于构建字典的代码路径,该字典可以是下列其中一个值:
|
| 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 -“对象类型”监视元素 |
