PostgreSQL 9.4.4 中文手册 | |||
---|---|---|---|
上一页 | 上一级 | 附录 F. 额外提供的模块 | 下一页 |
pgstattuple模块提供各种函数以获得元组级别的状态。
pgstattuple(regclass) returns record
pgstattuple
返回一个关系的实际长度,"死的"
元组的百分比,和其他信息。这帮助用户确定是否需要vacuum。
该参数是目标关系的名字(可以有模式限定)或OID。例如:
test=> SELECT * FROM pgstattuple('pg_catalog.pg_proc'); -[ RECORD 1 ]------+------- table_len | 458752 tuple_count | 1470 tuple_len | 438896 tuple_percent | 95.67 dead_tuple_count | 11 dead_tuple_len | 3157 dead_tuple_percent | 0.69 free_space | 8932 free_percent | 1.95
输出字段在表 F-21中描述。
表 F-21. pgstattuple
输出字段
字段 | 类型 | 描述 |
---|---|---|
table_len | bigint | 实际关系长度以字节计 |
tuple_count | bigint | 活的元组的数量 |
tuple_len | bigint | 活的元组的总长度,以字节计 |
tuple_percent | float8 | 活的元组的百分比 |
dead_tuple_count | bigint | 死的元组的数量 |
dead_tuple_len | bigint | 死的元组的总长度,以字节计 |
dead_tuple_percent | float8 | 死的元组的百分比 |
free_space | bigint | 总的空闲空间,以字节计 |
free_percent | float8 | 空闲空间的百分比 |
pgstattuple
只获取关系中的读锁。所以结果并不反映一个瞬间的快照;
并发的更新将影响它们。
如果HeapTupleSatisfiesDirty
返回假,那么pgstattuple
判断一个元组是否是"死的"。
pgstattuple(text) returns record
这和pgstattuple(regclass)
一样,除了目标关系是通过TEXT指定之外。
保留这个函数是为了向后兼容,在未来的版本中会被废除。
pgstatindex(regclass) returns record
pgstatindex
返回一个显示关于B-tree索引信息的记录。例如:
test=> SELECT * FROM pgstatindex('pg_cast_oid_index'); -[ RECORD 1 ]------+------ version | 2 tree_level | 0 index_size | 8192 root_block_no | 1 internal_pages | 0 leaf_pages | 1 empty_pages | 0 deleted_pages | 0 avg_leaf_density | 50.27 leaf_fragmentation | 0
输出字段是:
字段 | 类型 | 描述 |
---|---|---|
version | integer | B-tree 版本号 |
tree_level | integer | 根页面的树级别 |
index_size | bigint | 索引中页面的总数量 |
root_block_no | bigint | 根块的位置 |
internal_pages | bigint | "internal" (上一级) 页面的数量 |
leaf_pages | bigint | 叶子页面的数量 |
empty_pages | bigint | 空白页面的数量 |
deleted_pages | bigint | 已删除页面的数量 |
avg_leaf_density | float8 | 叶子页面的平均密度 |
leaf_fragmentation | float8 | 叶子页面碎片 |
与pgstattuple
一样,结果是一页一页的累积的,
不应该期望代表整个索引的一个瞬间快照。
pgstatindex(text) returns record
这和pgstatindex(regclass)
相同,除了目标索引是通过TEXT指定的。
保留这个函数是为了向后兼容,在未来的版本中将会废弃。
pgstatginindex(regclass) returns record
pgstatginindex
返回一个显示关于GIN索引信息的记录。例如:
test=> SELECT * FROM pgstatginindex('test_gin_index'); -[ RECORD 1 ]--+-- version | 1 pending_pages | 0 pending_tuples | 0
输出字段是:
pg_relpages(regclass) returns bigint
pg_relpages
返回关系中页面的数量。
pg_relpages(text) returns bigint
这和pgstatindex(regclass)
相同,除了目标关系是通过TEXT指定的。
保留这个函数是为了向后兼容,在未来的版本中将会废弃。
Tatsuo Ishii 和 Satoshi Nagayasu