本章节主要介绍PolarDB PostgreSQL版(兼容Oracle)中的不同视图详细信息,可通过查询不同视图获取相关对象信息,进而方便定位性能问题。
表
- pg_stat_all_tables
pg_stat_all_tables视图将为当前数据库中的每一个表显示与该表访问相关的统计信息。相关参数说明如下表所示:
参数 | 类型 | 描述 |
---|
relid | oid | 表OID。 |
schemaname | name | 表所在的Schema的名称。 |
relname | name | 表名称。 |
seq_scan | bigint | 在表上发起的顺序扫描的次数。 |
seq_tup_read | bigint | 被顺序扫描取得的活着的行的数量。 |
idx_scan | bigint | 在表上发起的索引扫描的次数。 |
idx_tup_fetch | bigint | 被索引扫描取得的活着的行的数量。 |
n_tup_ins | bigint | 被插入的行数。 |
n_tup_upd | bigint | 被更新的行数(包括 HOT 更新的行)。 |
n_tup_del | bigint | 被删除的行数。 |
n_tup_hot_upd | bigint | 被更新的 HOT 行数(即不要求独立索引更新的行更新)。 |
n_live_tup | bigint | 活着的行的估计数量。 |
n_dead_tup | bigint | 死亡行的估计数量。 |
n_mod_since_analyze | bigint | 从表最近一次被分析后被修改的行的估计数量。 |
last_vacuum | timestamp with time zone | 最近一次表被手动清理的时间(不统计VACUUM FULL)。 |
last_autovacuum | timestamp with time zone | 最近一次表被自动清理守护进程清理的时间。 |
last_analyze | timestamp with time zone | 最近一次表被手动分析的时间。 |
last_autoanalyze | timestamp with time zone | 最近一次表被自动清理守护进程分析的时间。 |
vacuum_count | bigint | 表被手工清理的次数(不统计VACUUM FULL)。 |
autovacuum_count | bigint | 表被自动清理守护进程清理的次数。 |
analyze_count | bigint | 表被手工分析的次数。 |
autoanalyze_count | bigint | 表被自动清理守护进程分析的次数。 |
- pg_statio_all_tables
pg_statio_all_tables视图将为当前数据库中的每个表指定有关 I/O 的统计信息。相关参数说明如下表所示:
参数 | 类型 | 描述 |
---|
relid | oid | 表的 OID。 |
schemaname | name | 表所在的Schema的名称。 |
relname | name | 表的名称。 |
heap_blks_read | bigint | 从表读取的磁盘块数量。 |
heap_blks_hit | bigint | 在表中的缓冲区命中数量。 |
idx_blks_read | bigint | 从表上所有索引中读取的磁盘块数。 |
idx_blks_hit | bigint | 在表上的所有索引中的缓冲区命中数量。 |
toast_blks_read | bigint | 从表的 TOAST 表读取的磁盘块数。 |
toast_blks_hit | bigint | 在表的 TOAST 表中的缓冲区命中数量。 |
tidx_blks_read | bigint | 从表的 TOAST 表索引中读取的磁盘块数。 |
tidx_blks_hit | bigint | 在表的 TOAST 表索引中的缓冲区命中数量。 |
序列
pg_statio_all_sequences
显示当前数据库相关序列信息,以及指定序列上与 I/O 有关的统计信息。相关参数说明如下:
参数 | 类型 | 描述 |
---|
relid | oid | 序列OID。 |
schemaname | name | 序列所在的Schema的名称。 |
relname | name | 序列名称。 |
blks_read | bigint | 从序列中读取的磁盘块数。 |
blks_hit | bigint | 在序列中的缓冲区命中数量。 |
函数
pg_stat_user_functions
显示被跟踪函数有关的统计信息。
参数 | 类型 | 描述 |
---|
funcid | oid | 函数OID。 |
schemaname | name | 函数所在的Schema名称。 |
funcname | name | 函数名称。 |
calls | bigint | 函数被调用的次数。 |
total_time | double precision | 在函数以及它所调用的其他函数中花费的总时间。单位:毫秒。 |
self_time | double precision | 在函数本身花费的总时间,不包括被它调用的其他函数。单位:毫秒。 |