SVV_TABLE_INFO
显示数据库中表的摘要信息。该视图筛选系统表并且只显示用户定义的表。
您可以使用 SVV_TABLE_INFO 视图来诊断和解决可能影响查询性能的表设计问题。这包括压缩编码、分配键、排序方式、数据分配偏斜、表大小和统计数据等方面的问题。SVV_TABLE_INFO 视图对于空表不返回任何信息。
SVV_TABLE_INFO 视图汇总了来自 STV_BLOCKLIST、STV_NODE_STORAGE_CAPACITY、STV_TBL_PERM 和 STV_SLICES 系统表以及来自 PG_DATABASE
SVV_TABLE_INFO 仅对超级用户可见。有关更多信息,请参阅 系统表和视图中的数据可见性。要允许用户查询视图,请向该用户授予 SVV_TABLE_INFO 上的 SELECT 权限。
表列
列名称 | 数据类型 | 描述 |
---|---|---|
database | text | 数据库名称。 |
schema | text | Schema 名称。 |
table_id | oid | 表 ID。 |
table | text | 表名称。 |
encoded | text | 一个指示是否有任何列定义了压缩编码的值。 |
diststyle | text | 分配方式或分配键列(如果定义了键分配)。可能的值包括 EVEN 、KEY(column) 、ALL 、AUTO(ALL) 、AUTO(EVEN) 和 AUTO(KEY(column)) 。 |
sortkey1 | text | 排序键中的第一列(如果定义了排序键)。可能的值包括 column 、AUTO(SORTKEY) 和 AUTO(SORTKEY(column)) 。 |
max_varchar | integer | 使用 VARCHAR 数据类型的最大列的大小。 |
sortkey1_enc | character(32) | 排序键中第一列的压缩编码(如果定义了排序键)。 |
sortkey_num | integer | 定义为排序键的列数。 |
size | bigint | 表的大小(单位为 1MB 数据块)。 |
pct_used | numeric(10,4) | 表使用的可用空间的百分比。 |
empty | bigint | 供内部使用。此列已不再使用,并将在未来的发行版中删除。 |
unsorted | numeric(5,2) | 表中未排序行的百分比。 |
stats_off | numeric(5,2) | 一个指示表统计数据过时程度的数字;0 表示最新,100 表示过时。 |
tbl_rows | numeric(38,0) | 表中的总行数。此值包括标记为删除但尚未执行 vacuum 操作的行。 |
skew_sortkey1 | numeric(19,2) | 最大非排序键列的大小与排序键第一列的大小的比率(如果定义了排序键)。使用此值可以评估排序键的有效性。 |
skew_rows | numeric(19,2) | 行数最多的切片中的行数与行数最少的切片中的行数的比率。 |
estimated_visible_rows | numeric(38,0) | 表中的估计行数。此值不包括标记为删除的行。 |
risk_event | text | 有关表的风险信息。该字段分为几部分:
以下示例显示字段中的值。
|
vacuum_sort_benefit | numeric(12,2) | 运行 vacuum 排序时,扫描查询性能的最大估计改进百分比。 |
create_time | 不带时区的时间戳 | 表创建时间的时间戳。 |
示例查询
下面的示例显示数据库中所有用户定义的表的编码、分配方式、排序和数据偏斜。其中,“table”是一个保留字,因此必须用双引号括起来。
select "table", encoded, diststyle, sortkey1, skew_sortkey1, skew_rows from svv_table_info order by 1; table | encoded | diststyle | sortkey1 | skew_sortkey1 | skew_rows ---------------+---------+-----------------+--------------+---------------+---------- category | N | EVEN | | | date | N | ALL | dateid | 1.00 | event | Y | KEY(eventid) | dateid | 1.00 | 1.02 listing | Y | KEY(listid) | dateid | 1.00 | 1.01 sales | Y | KEY(listid) | dateid | 1.00 | 1.02 users | Y | KEY(userid) | userid | 1.00 | 1.01 venue | N | ALL | venueid | 1.00 | (7 rows)