更新时间:2024-11-27 GMT+08:00

统计信息函数

统计信息函数根据访问对象分为两种类型:

  • 针对某个数据库进行访问的函数,以数据库中每个表或索引的OID作为参数,标识需要报告的数据库。
  • 针对某个服务器进行访问的函数,以一个服务器进程号为参数,其范围从1到当前活跃服务器的数目。

pg_stat_get_db_numbackends(oid)

描述:查询当前实例上指定数据库活跃的服务器线程数目。

返回值类型:integer

pg_stat_get_db_total_numbackends(oid)

描述:在CN上执行该函数,返回集群中所有CN上指定数据库活跃的服务器线程总数。在DN上执行该函数,返回当前实例上指定数据库活跃的服务器线程数目。

返回值类型:integer

pg_stat_get_db_xact_commit(oid)

描述:返回当前实例上指定数据库中已提交事务的数量。

返回值类型:bigint

pg_stat_get_db_total_xact_commit(oid)

描述:在CN上执行该函数,返回集群中所有CN上指定数据库中已提交事务的总数。在DN上执行该函数,返回当前实例上指定数据库中已提交事务的数量。

返回值类型:bigint

pg_stat_get_db_xact_rollback(oid)

描述:返回当前实例上指定数据库中回滚事务的数量。

返回值类型:bigint

pg_stat_get_db_total_xact_rollback(oid)

描述:在CN上执行该函数,返回集群中所有CN上指定数据库中回滚事务的总数。在DN上执行该函数,返回当前实例上指定数据库中回滚事务的数量。

返回值类型:bigint

pg_stat_get_db_blocks_fetched(oid)

描述:返回当前实例上指定数据库中磁盘块抓取请求的数量。

返回值类型:bigint

pg_stat_get_db_total_blocks_fetched(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库中磁盘块抓取请求的总数。在DN上执行该函数,返回当前实例上指定数据库中磁盘块抓取请求的数量。

返回值类型:bigint

pg_stat_get_db_blocks_hit(oid)

描述:返回当前实例上指定数据库在缓冲区中找到的请求磁盘块的数量。

返回值类型:bigint

pg_stat_get_db_total_blocks_hit(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库在缓冲区中找到的请求磁盘块的总数。在DN上执行该函数,返回当前实例上指定数据库在缓冲区中找到的请求磁盘块的数量。

返回值类型:bigint

pg_stat_get_db_tuples_returned(oid)

描述:返回当前实例上指定数据库返回的元祖数量。

返回值类型:bigint

pg_stat_get_db_total_tuples_returned(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库返回的元组总数。在DN上执行该函数,返回当前实例上指定数据库返回的元组数量。

返回值类型:bigint

pg_stat_get_db_tuples_fetched(oid)

描述:返回当前实例上指定数据库中读取的元组数量。

返回值类型:bigint

pg_stat_get_db_total_tuples_fetched(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库读取的元组总数。在DN上执行该函数,返回当前实例上指定数据库读取的元组数量。

返回值类型:bigint

pg_stat_get_db_tuples_inserted(oid)

描述:返回当前实例上指定数据库中插入的元组数量。

返回值类型:bigint

pg_stat_get_db_total_tuples_inserted(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库插入的元组总数。在DN上执行该函数,返回当前实例上指定数据库插入的元组数量。

返回值类型:bigint

pg_stat_get_db_tuples_updated(oid)

描述:返回当前实例上指定数据库中更新的元组数量。

返回值类型:bigint

pg_stat_get_db_total_tuples_updated(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库更新的元组总数。在DN上执行该函数,返回当前实例上指定数据库更新的元组数量。

返回值类型:bigint

pg_stat_get_db_tuples_deleted(oid)

描述:返回当前实例上指定数据库中删除的元组数量。

返回值类型:bigint

pg_stat_get_db_total_tuples_deleted(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库删除的元组总数。在DN上执行该函数,返回当前实例上指定数据库删除的元组数量。

返回值类型:bigint

pg_stat_get_db_conflict_lock(oid)

描述:在CN上执行该函数,返回集群中所有CN和DN上指定数据库锁冲突的总数。在DN上执行该函数,返回当前实例上指定数据库中锁冲突数量。

返回值类型:bigint

pg_stat_get_db_deadlocks(oid)

描述:返回当前实例上指定数据库中死锁的数量。

返回值类型:bigint

pg_stat_get_db_total_deadlocks(oid)

描述:在CN上执行该函数,返回集群中所有CN和DN上指定数据库死锁的总数。在DN上执行该函数,返回当前实例上指定数据库中死锁的数量。

返回值类型:bigint

pg_stat_get_db_conflict_all(oid)

描述:返回当前实例上指定数据库中发生冲突恢复的次数。

返回值类型:bigint

pg_stat_get_db_total_conflict_all(oid)

描述:在CN上执行该函数,返回集群中所有CN和DN上指定数据库发生冲突恢复的总次数。在DN上执行该函数,返回当前实例上指定数据库中发生冲突恢复的次数。

返回值类型:bigint

pg_stat_get_db_temp_files(oid)

描述:返回当前实例上指定数据库中创建临时文件的个数。

返回值类型:bigint

pg_stat_get_db_total_temp_files(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库中创建临时文件的总个数。在DN上执行该函数,返回当前实例上指定数据库中创建临时文件的个数。

返回值类型:bigint

pg_stat_get_db_temp_bytes(oid)

描述:返回当前实例上指定数据库中创建临时文件的字节数。

返回值类型:bigint

pg_stat_get_db_total_temp_bytes(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库中创建临时文件的总字节数。在DN上执行该函数,返回当前实例上指定数据库中创建临时文件的字节数。

返回值类型:bigint

pg_stat_get_db_blk_read_time(oid)

描述:返回当前实例上指定数据库中读数据块所用的时间。

返回值类型:double

pg_stat_get_db_total_blk_read_time(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库中读数据块所用的总时间。在DN上执行该函数,返回当前实例上指定数据库中读数据块所用的时间。

返回值类型:double

pg_stat_get_db_blk_write_time(oid)

描述:返回当前实例上指定数据库中写数据块所用的时间。

返回值类型:double

pg_stat_get_db_total_blk_write_time(oid)

描述:在CN上执行该函数,返回集群中所有DN上指定数据库中写数据块所用的总时间。在DN上执行该函数,返回当前实例上指定数据库中写数据块所用的时间。

返回值类型:double

pg_stat_get_numscans(oid)

描述:如果参数是一个表,则顺序扫描读取的行数目。

如果参数是一个索引,则返回索引行的数目。

返回值类型:bigint

pg_stat_get_tuple()

描述:在CN和DN上均可以执行,该函数仅8.1.3及以上集群版本支持。

函数无参时,查询CN上所有系统表的统计信息及表在每个CN上的脏页率,查询DN上所有系统表和用户表的统计信息和表在每个DN上的脏页率;

函数带入参时,入参是schema和表名,带入参的函数执行时查询单张表的统计信息和脏页率。

该函数的统计信息依赖于ANALYZE,为获取最准确的信息请先对表进行ANALYZE。

返回值类型:record

函数返回字段如下:

表1 pg_stat_get_tuple()返回字段

名称

类型

描述

nodename

text

节点名。

tableid

oid

表的oid。

partid

oid

分区表的分区oid。

last_vacuum

timestamp with time zone

最后一次手动vacuum时间。

last_autovacuum

timestamp with time zone

最后一次autovacuum时间。

last_analyze

timestamp with time zone

最后一次手动analyze时间。

last_autoanalyze

timestamp with time zone

最后一次autoanalyze时间。

vacuum_count

bigint

vacuum次数。

autovacuum_count

bigint

autovacuum次数。

analyze_count

bigint

analyze次数。

autoanalyze_count

bigint

autoanalyze_count次数。

n_tup_ins

bigint

插入的行数。

n_tup_upd

bigint

更新的行数。

n_tup_del

bigint

删除的行数。

n_tup_hot_upd

bigint

HOT更新的行数。

n_tup_change

bigint

analyze之后改变的行数。

n_live_tup

bigint

live行估计数。

n_dead_tup

bigint

dead行估计数。

dirty_rate

bigint

单节点的脏页率(单CN或单DN级)。

last_data_changed

timestamp with time zone

记录表最后一次数据变化的时间。

pg_stat_get_tuples_returned(oid)

描述:如果参数是一个表,则顺序扫描读取的行数目。

如果参数是一个索引,则返回的索引行的数目。

返回值类型:bigint

pg_stat_get_tuples_fetched(oid)

描述:如果参数是一个表,则位图扫描抓取的行数目。

如果参数是一个索引,则用简单索引扫描抓取的行数目。

返回值类型:bigint

pg_stat_get_tuples_inserted(oid)

描述:插入表中行的数量。

返回值类型:bigint

pg_stat_get_local_tuples_inserted(oid)

描述:当前节点上插入表中行的数量,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_tuples_updated(oid)

描述:在表中已更新行的数量。

返回值类型:bigint

pg_stat_get_local_tuples_updated(oid)

描述:当前节点上在表中已更新行的数量,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_tuples_deleted(oid)

描述:从表中删除行的数量。

返回值类型:bigint

pg_stat_get_local_tuples_deleted(oid)

描述:当前节点上从表中删除行的数量,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_tuples_changed(oid)

描述:在CN上查询该函数,返回该表自上一次analyze或autoanalyze之后插入、更新、删除行的总数量。在DN上查询该函数,返回该表在当前节点上自上一次analyze或autoanalyze之后插入、更新、删除行的总数量。

返回值类型:bigint

pg_stat_get_local_tuples_changed(oid)

描述:该表在当前节点上自从上一次analyze或autoanalyze之后插入、更新、删除行的数量。

返回值类型:bigint

pg_stat_get_tuples_hot_updated(oid)

描述:热更新的行数表。

返回值类型:bigint

pg_stat_get_local_tuples_hot_updated(oid)

描述:当前节点上热更新的行数表,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_live_tuples(oid)

描述:表格的活元组数。

返回值类型:bigint

pg_stat_get_local_live_tuples(oid)

描述:当前节点上表格的活元组数,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_dead_tuples(oid)

描述:表格的死元组数。

返回值类型:bigint

pg_stat_get_local_dead_tuples(oid)

描述:当前节点上表格的死元组数,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_blocks_fetched(oid)

描述:表或者索引的磁盘块抓取请求的数量。

返回值类型:bigint

pg_stat_get_blocks_hit(oid)

描述:在缓冲区中找到的表或者索引的磁盘块请求数目。

返回值类型:bigint

pg_stat_get_partition_tuples_inserted(oid)

描述:插入相应表分区中行的数量。

返回值类型:bigint

pg_stat_get_partition_tuples_updated(oid)

描述:在相应表分区中已更新行的数量。

返回值类型:bigint

pg_stat_get_partition_tuples_deleted(oid)

描述:从相应表分区中删除行的数量。

返回值类型:bigint

pg_stat_get_partition_tuples_changed(oid)

描述:该表分区上一次analyze或autoanalyze之后插入、更新、删除行的总数量。

返回值类型:bigint

pg_stat_get_partition_live_tuples(oid)

描述:活行数表分区。

返回值类型:bigint

pg_stat_get_partition_dead_tuples(oid)

描述:死行数表分区。

返回值类型:bigint

pg_stat_get_xact_tuples_inserted(oid)

描述:表相关的活跃子事务中插入的tuple数。

返回值类型:bigint

pg_stat_get_xact_tuples_deleted(oid)

描述:表相关的活跃子事务中删除的tuple数。

返回值类型:bigint

pg_stat_get_xact_tuples_hot_updated(oid)

描述:表相关的活跃子事务中热更新的tuple数。

返回值类型:bigint

pg_stat_get_xact_tuples_updated(oid)

描述:表相关的活跃子事务中更新的tuple数。

返回值类型:bigint

pg_stat_get_xact_partition_tuples_inserted(oid)

描述:表分区相关的活跃子事务中插入的tuple数。

返回值类型:bigint

pg_stat_get_xact_partition_tuples_deleted(oid)

描述:表分区相关的活跃子事务中删除的tuple数。

返回值类型:bigint

pg_stat_get_xact_partition_tuples_hot_updated(oid)

描述:表分区相关的活跃子事务中热更新的tuple数。

返回值类型:bigint

pg_stat_get_xact_partition_tuples_updated(oid)

描述:表分区相关的活跃子事务中更新的tuple数。

返回值类型:bigint

pg_stat_get_last_vacuum_time(oid)

描述:用户在该表上最后一次手动启动清理或者autovacuum线程启动清理的时间。

返回值类型:timestamptz

pg_stat_get_last_autovacuum_time(oid)

描述:autovacuum守护线程在该表上最后一次启动清理的时间。

返回值类型:timestamptz

pg_stat_get_local_last_autovacuum_time(oid)

描述:当前节点的autovacuum守护线程在该表上最后一次启动清理的时间,该函数仅8.1.2及以上版本支持。

返回值类型:timestamptz

pg_stat_get_vacuum_count(oid)

描述:用户在该表上手动启动清理的次数。

返回值类型:bigint

pg_stat_get_autovacuum_count(oid)

描述:autovacuum守护线程在该表上启动清理的次数。

返回值类型:bigint

pg_stat_get_local_autovacuum_count(oid)

描述:当前节点上的autovacuum守护线程在该表上启动清理的次数,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_last_analyze_time(oid)

描述:用户在该表上最后一次手动启动分析或者autovacuum线程启动分析的时间。

返回值类型:timestamptz

pg_stat_get_last_autoanalyze_time(oid)

描述:autovacuum守护线程在该表上最后一次启动分析的时间。

返回值类型:timestamptz

pg_stat_get_local_last_autoanalyze_time(oid)

描述:当前节点的autovacuum守护线程在该表上最后一次启动分析的时间,该函数仅8.1.2及以上版本支持。

返回值类型:timestamptz

pg_stat_get_analyze_count(oid)

描述:用户在该表上手动启动分析的次数。

返回值类型:bigint

pg_stat_get_autoanalyze_count(oid)

描述:autovacuum守护线程在该表上启动分析的次数。

返回值类型:bigint

pg_stat_get_local_autoanalyze_count(oid)

描述:当前节点的autovacuum守护线程在该表上启动分析的次数,该函数仅8.1.2及以上版本支持。

返回值类型:bigint

pg_stat_get_local_analyze_status(oid)

描述:指定表在当前节点上的是否需要analyze的状态,仅在CN端有意义。该函数仅8.1.2及以上版本支持。

  • 如果该表的修改行数超过analyze的阈值(根据autovacuum_analyze_threshold + autovacuum_analyze_scale_factor * reltuples计算,其中reltuples是pg_class中记录的表的估算行数),则返回“Analyze needed”。
  • 如果该表的修改行数不超过analyze的阈值,则返回“Analyze not needed”。
  • 如果该表正在进行由查询触发的analyze,则返回“Analyze in progress”。
  • 如果该表是否需要analyze的状态未知,则返回“Unknown analyze status”。

返回值类型:text

pg_total_autovac_tuples(bool)

描述:返回total autovac相关的tuple记录,如nodename,nspname,relname以及各类tuple的IUD信息。

返回值类型:setof record

pg_autovac_status(oid)

描述:返回和autovac状态相关的参数信息,如nodename,nspname,relname,analyze,vacuum设置,analyze/vacuum阈值,analyze/vacuum tuple数等。

返回值类型:setof record

pg_autovac_timeout(oid)

描述:返回某个表做autovac连续超时的次数,表信息非法或node信息异常返回NULL。

返回值类型:bigint

pg_autovac_coordinator(oid)

描述:返回对某个表做autovac的coordinator名字,表信息非法或node信息异常返回NULL。

返回值类型:text

pgxc_get_wlm_session_info_bytime(text, timestamp without time zone, timestamp without time zone, int)

描述:PGXC_WLM_SESSION_INFO视图在统计数据量很大的场景中性能较差,建议使用该函数进行筛选查询。入参分别为:筛选时间列('start_time', 'finish_time'),起始区间时间,结束区间时间,每个CN返回的最大数量。返回值为GS_WLM_SESSION_HISTORY。

返回值类型:setof record

pgxc_get_wlm_current_instance_info(text, int default null)

描述:在CN节点上查询集群各节点当前的资源使用情况,读取内存中还未存到GS_WLM_INSTANCE_HISTORY系统表的数据。入参分别为:节点名称(可以输入ALL、C、D、实例名称),每个节点返回的最大数量。返回值为GS_WLM_INSTANCE_HISTORY。

返回值类型:setof record

pgxc_get_wlm_history_instance_info(text, TIMESTAMP, TIMESTAMP, int default null)

描述:在CN节点上查询集群各节点历史资源使用情况,读取GS_WLM_INSTANCE_HISTORY系统表的数据。入参分别为:节点名称(可以输入ALL、C、D、实例名称),起始区间时间,结束区间时间,每个实例返回的最大数量。返回值为GS_WLM_INSTANCE_HISTORY。

返回值类型:setof record

pg_stat_get_last_data_changed_time(oid)

描述:insert/update/delete,exchange/drop partition在该表上最后一次操作的时间,PG_STAT_ALL_TABLES视图last_data_changed列的数据是通过该函数求值,在表数量很大的场景中,通过视图获取表数据最后修改时间的性能较差,建议直接使用该函数获取表数据的最后修改时间。

返回值类型:timestamptz

pg_stat_set_last_data_changed_time(oid)

描述:手动设置该表上最后一次insert/update/delete,exchange/truncate/drop partition操作的时间。

返回值类型:void

pv_session_time()

描述:统计当前节点各会话线程的运行时间信息及各执行阶段所消耗时间。

返回值类型:record

pv_instance_time()

描述:统计当前节点的运行时间信息及各执行阶段所消耗时间。

返回值类型:record

pg_stat_get_activity(integer)

描述:返回一个关于带有特殊PID的后台进程的记录信息,当参数为NULL时,则返回每个活动的后台进程的记录。返回结果是PG_STAT_ACTIVITY视图中的一个子集,不包含connection_info列。

返回值类型:setof record

pg_stat_get_activity_with_conninfo(integer)

描述:返回一个关于带有特殊PID的后台进程的记录信息,当参数为NULL时,则返回每个活动的后台进程的记录。返回结果是PG_STAT_ACTIVITY视图中的一个子集。

返回值类型:setof record

pg_user_iostat(text)

描述:该函数8.1.2版本中已废弃,为兼容历史版本功能保留该函数,当前版本查询无效。

返回值类型:record

表2 pg_user_iostat(text)返回字段

名称

类型

描述

userid

oid

用户ID。

min_curr_iops

int4

当前该用户IO在各DN中的最小值。

max_curr_iops

int4

当前该用户IO在各DN中的最大值。

min_peak_iops

int4

该用户IO峰值中,各DN的最小值。

max_peak_iops

int4

该用户IO峰值中,各DN的最大值。

io_limits

int4

用户指定的资源池所设置的io_limits。

io_priority

text

该用户所设io_priority。

pg_stat_get_function_calls(oid)

描述:函数已被调用次数。

返回值类型:bigint

pg_stat_get_function_total_time(oid)

描述:该函数花费的总挂钟时间,以微秒为单位。包括花费在此函数调用上的时间。

返回值类型:double precision

pg_stat_get_function_self_time(oid)

描述:在当前事务中仅花费在此函数上的时间。不包括花费在调用函数上的时间。

返回值类型:double precision

pg_stat_get_backend_idset()

描述:设置当前活动的服务器进程数(从1到活动服务器进程的数量)。

返回值类型:setofinteger

pg_stat_get_backend_pid(integer)

描述:给定的服务器线程的线程ID。

返回值类型:bigint

1
2
3
4
5
SELECT pg_stat_get_backend_pid(1);
 pg_stat_get_backend_pid 
-------------------------
         139706243217168
(1 row)

pg_stat_get_backend_dbid(integer)

描述:连接到给定服务器进程的数据库ID。

返回值类型:oid

pg_stat_get_backend_userid(integer)

描述:给定的服务器进程的用户ID。

返回值类型:oid

pg_stat_get_backend_activity(integer)

描述:给定服务器进程的当前活动查询,仅在调用者是系统管理员或被查询会话的用户,并且打开track_activities的时候才能获得结果。

返回值类型:text

pg_stat_get_backend_waiting(integer)

描述:如果给定服务器进程在等待某个锁,并且调用者是系统管理员或被查询会话的用户,并且打开track_activities的时候才返回真。

返回值类型:boolean

pg_stat_get_backend_activity_start(integer)

描述:给定服务器进程当前正在执行的查询的起始时间,仅在调用者是系统管理员或被查询会话的用户,并且打开track_activities的时候才能获得结果。

返回值类型:timestampwithtimezone

pg_stat_get_backend_xact_start(integer)

描述:给定服务器进程当前正在执行的事务的开始时间,但只有当前用户是系统管理员或被查询会话的用户,并且打开track_activities的时候才能获得结果。

返回值类型:timestampwithtimezone

pg_stat_get_backend_start(integer)

描述:给定服务器进程启动的时间,如果当前用户不是系统管理员或被查询的后端的用户,则返回NULL。

返回值类型:timestampwithtimezone

pg_stat_get_backend_client_addr(integer)

描述:连接到给定客户端后端的IP地址。

如果是通过Unix域套接字连接的则返回NULL;如果当前用户不是系统管理员或被查询会话的用户,也返回NULL。

返回值类型:inet

备注:该函数中IP地址作为入参时,需写为不带圆点的格式,例如,192.168.100.128写为192168100128。

pg_stat_get_backend_client_port(integer)

描述:连接到给定客户端后端的TCP端口。

如果是通过Unix域套接字连接的则返回-1;如果当前用户不是系统管理员或被查询会话的用户,也返回NULL。

返回值类型:integer

pg_stat_get_bgwriter_timed_checkpoints()

描述:后台写进程开启定时检查点的时间(因为checkpoint_timeout时间已经过期了)。

返回值类型:bigint

pg_stat_get_bgwriter_requested_checkpoints()

描述:后台写进程开启基于后端请求的检查点的时间,因为已经超过了checkpoint_segments或因为已经执行了CHECKPOINT。

返回值类型:bigint

pg_stat_get_bgwriter_buf_written_checkpoints()

描述:在检查点期间后台写进程写入的缓冲区数目。

返回值类型:bigint

pg_stat_get_bgwriter_buf_written_clean()

描述:为日常清理脏块,后台写进程写入的缓冲区数目。

返回值类型:bigint

pg_stat_get_bgwriter_maxwritten_clean()

描述:后台写进程停止清理扫描的时间,因为已经写入了更多的缓冲区(相比bgwriter_lru_maxpages参数声明的缓冲区数)。

返回值类型:bigint

pg_stat_get_buf_written_backend()

描述:后端进程写入的缓冲区数,因为它们需要分配一个新的缓冲区。

返回值类型:bigint

pg_stat_get_buf_alloc()

描述:分配的总缓冲区数。

返回值类型:bigint

pg_stat_clear_snapshot()

描述:清理当前的统计快照。

返回值类型:void

pg_stat_reset()

描述:为当前数据库重置统计计数器为0(需要系统管理员权限)。

返回值类型:void

pg_stat_reset_shared(text)

描述:重置shared cluster每个节点当前数据统计计数器为0(需要系统管理员权限)。

返回值类型:void

pg_stat_reset_single_table_counters(oid)

描述:为当前数据库中的一个表或索引重置统计为0(需要系统管理员权限)。

返回值类型:void

pg_stat_reset_single_function_counters(oid)

描述:为当前数据库中的一个函数重置统计为0(需要系统管理员权限)。

返回值类型:void

pg_stat_session_cu(int, int, int)

描述:获取当前节点所运行session的CU命中统计信息。

返回值类型:record

gs_get_stat_session_cu(text, int, int, int)

描述:获取集群所有运行session的CU命中统计信息。

返回值类型:record

gs_get_stat_db_cu(text, text, bigint, bigint, bigint)

描述:获取集群一个数据库的CU命中统计信息。

返回值类型:record

pg_stat_get_cu_mem_hit(oid)

描述:获取当前节点当前数据库中一个列存表的CU内存命中次数。

返回值类型:bigint

pg_stat_get_cu_hdd_sync(oid)

描述:获取当前节点当前数据库中一个列存表从磁盘同步读取CU次数。

返回值类型:bigint

pg_stat_get_cu_hdd_asyn(oid)

描述:获取当前节点当前数据库中一个列存表从磁盘异步读取CU次数。

返回值类型:bigint

pg_stat_get_db_cu_mem_hit(oid)

描述:获取当前节点一个数据库CU内存命中次数。

返回值类型:bigint

pg_stat_get_db_cu_hdd_sync(oid)

描述:获取当前节点一个数据库从磁盘同步读取CU次数。

返回值类型:bigint

pg_stat_get_db_cu_hdd_asyn(oid)

描述:获取当前节点一个数据库从磁盘异步读取CU次数。

返回值类型:bigint

pgxc_fenced_udf_process()

描述:查看UDF Master和Work进程数。

返回值类型:record

pgxc_terminate_all_fenced_udf_process()

描述:Kill所有的UDF Work进程。

返回值类型:bool

GS_ALL_NODEGROUP_CONTROL_GROUP_INFO(text)

描述:提供了所有逻辑集群的控制组信息。该函数在调用的时候需要指定要查询逻辑集群的名称。例如要查询'installation'逻辑集群的控制组信息:
1
SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('installation')

返回值类型:record

函数返回字段如下:

表3 GS_ALL_NODEGROUP_CONTROL_GROUP_INFO(text)

名称

类型

描述

name

text

控制组的名称。

type

text

控制组的类型。

gid

bigint

控制组ID。

classgid

bigint

Workload所属Class的控制组ID。

class

text

Class控制组。

workload

text

Workload控制组。

shares

bigint

控制组分配的CPU资源配额。

limits

bigint

控制组分配的CPU资源限额。

wdlevel

bigint

Workload控制组层级。

cpucores

text

控制组使用的CPU核的信息。

gs_get_nodegroup_tablecount(name)

描述:得到一个逻辑集群中所有数据库包含的用户表数目。

返回值类型:integer

pgxc_max_datanode_size(name)

描述:得到一个逻辑集群的所有DN节点中数据库文件占用磁盘空间的最大值,单位为字节。

返回值类型:bigint

gs_check_logic_cluster_consistency()

描述:检查当前系统中所有逻辑集群是否存在系统信息不一致的情况,如果返回空记录,表示不存在不一致情况;否则,逻辑集群中CN和DN上的NodeGroup信息存在不一致。该函数应该在非扩缩容重分布时调用。

返回值类型:record

gs_check_tables_distribution()

描述: 检查当前系统中用户表的分布是否存在不一致,如果返回空记录,表示不存在不一致。该函数应该在非扩缩容重分布时调用。

返回值类型:record

pg_stat_bad_block(text, int, int, int, int, int, timestamp with time zone, timestamp with time zone)

描述:获取当前节点自启动后,读取出现Page/CU的损坏信息。

返回值类型:record

pgxc_stat_bad_block(text, int, int, int, int, int, timestamp with time zone, timestamp with time zone)

描述:获取集群所有节点自启动后,读取出现Page/CU的损坏信息。

返回值类型:record

pg_stat_bad_block_clear()

描述:清理节点记录的读取出现的Page/CU损坏信息(需要系统管理员权限)。

返回值类型:void

pgxc_stat_bad_block_clear()

描述:清理集群所有节点记录的读取出现的Page/CU损坏信息(需要系统管理员权限)。

返回值类型:void

gs_respool_exception_info(pool text)

描述:查看某个资源池关联的查询规则信息。

返回值类型:record

gs_control_group_info(pool text)

描述:查看资源池关联的控制组信息

返回值类型:record

返回信息如下:

表4 gs_control_group_info(pool text)返回字段

属性

属性值

描述

name

class_a:workload_a1

Class和workload名称。

class

class_a

Class控制组名称。

workload

workload_a1

Workload控制组名称。

type

DEFWD

控制组类型(Top、CLASS、BAKWD、DEFWD、TSWD)。

gid

87

控制组ID。

shares

30

占父节点CPU资源的百分比。

limits

0

占父节点CPU核数的百分比。

rate

0

Timeshare中的分配比例。

cpucores

0-3

CPU核心数。

gs_wlm_user_resource_info(name text)

描述:查询具体某个用户的资源限额和资源使用情况。

返回值类型:record

pgxc_stat_single_table(schema, tablename)

描述:在CN上执行,入参为schema和表名。查询单张表在全库中的统计信息及该表在每个DN上的脏页率。

该函数仅8.1.3及以上集群版本支持。

该函数的统计信息依赖于ANALYZE,为获取该表最准确的信息请先对表进行ANALYZE。

返回值类型:record

返回值字段与函数pg_stat_get_tuple()相同。

1
2
3
4
5
6
7
8
SELECT * FROM pgxc_stat_single_table('public','t1');
 nodename  | tableid | partid |      last_vacuum       |    last_autovacuum     |         last_analyze          |    last_autoanalyze    | vacuum_count | autovacuum_count | analyze_count | autoanalyze_count | n_tup_ins | n_
tup_upd | n_tup_del | n_tup_hot_upd | n_tup_change | n_live_tup | n_dead_tup | dirty_rate | last_data_changed
-----------+---------+--------+------------------------+------------------------+-------------------------------+------------------------+--------------+------------------+---------------+-------------------+-----------+---
--------+-----------+---------------+--------------+------------+------------+------------+-------------------
 datanode1 | 1270075 |        | 2000-01-01 08:00:00+08 | 2000-01-01 08:00:00+08 | 2023-01-09 09:38:43.220876+08 | 2000-01-01 08:00:00+08 |            0 |                0 |             1 |                 0 |         0 |
      0 |         0 |             0 |            0 |          0 |          0 |          0 |
(1 row)