SVV_INTERLEAVED_COLUMNS
使用 SVV_INTERLEAVED_COLUMNS 视图可帮助确定使用交错排序键的表是否应使用 VACUUM REINDEX 重建索引。有关如何确定运行 VACUUM 的频度和运行 VACUUM REINDEX 的时机的更多信息,请参阅最大程度地减少 vacuum 次数。
SVV_INTERLEAVED_COLUMNS 只对超级用户可见。有关更多信息,请参阅 系统表和视图中的数据可见性。
表列
列名称 | 数据类型 | 描述 |
---|---|---|
tbl | integer | 表 ID。 |
col | integer | 列的零基索引。 |
interleaved_skew | numeric(19,2) | 表示表的交错排序键列中存在的偏斜量的比率。值 1.00 表示无偏斜,值越大表示偏斜越大。具有较大偏斜的表应通过 VACUUM REINDEX 命令重建索引。 |
last_reindex | timestamp | 上次为指定的表运行 VACUUM REINDEX 的时间。如果表从未重新编制索引,或者自上次重建索引后基础系统日志表 STL_VACUUM 已轮换,则此值为 NULL。 |
示例查询
要找出可能需要重建索引的表,请运行下面的查询。
select tbl as tbl_id, stv_tbl_perm.name as table_name, col, interleaved_skew, last_reindex from svv_interleaved_columns, stv_tbl_perm where svv_interleaved_columns.tbl = stv_tbl_perm.id and interleaved_skew is not null; tbl_id | table_name | col | interleaved_skew | last_reindex --------+------------+-----+------------------+-------------------- 100068 | lineorder | 0 | 3.65 | 2015-04-22 22:05:45 100068 | lineorder | 1 | 2.65 | 2015-04-22 22:05:45 100072 | customer | 0 | 1.65 | 2015-04-22 22:05:45 100072 | lineorder | 1 | 1.00 | 2015-04-22 22:05:45 (4 rows)