GS_WLM_SESSION_QUERY_INFO_ALL
GS_WLM_SESSION_QUERY_INFO_ALL系统表显示当前数据库实例执行作业结束后的负载管理记录。此数据是从内核中转储到系统表中的数据。当设置GUC参数enable_resource_record为on时,系统会定时(周期为3分钟)将内核中query信息导入GS_WLM_SESSION_QUERY_INFO_ALL系统表。
查询该系统表需要sysadmin权限,且仅在数据库postgres下面查询时有数据。
表 1 GS_WLM_SESSION_QUERY_INFO_ALL字段
名称
|
类型
|
描述
|
datid
|
oid
|
连接后端的数据库OID。
|
dbname
|
text
|
连接后端的数据库名称。
|
schemaname
|
text
|
模式的名称。
|
nodename
|
text
|
语句执行的数据库实例名称。
|
username
|
text
|
连接到后端的用户名。
|
application_name
|
text
|
连接到后端的应用名。
|
client_addr
|
inet
|
连接到后端的客户端的IP地址。 如果此字段是null,它表明通过服务器机器上UNIX套接字连接客户端或者这是内部进程,如autovacuum。
|
client_hostname
|
text
|
客户端的主机名,这个字段是通过client_addr的反向DNS查找得到。这个字段只有在启动log_hostname且使用IP连接时才非空。
|
client_port
|
integer
|
客户端用于与后端通讯的TCP端口号,如果使用Unix套接字,则为-1。
|
query_band
|
text
|
用于标示作业类型,可通过GUC参数query_band进行设置,默认为空字符串。
|
block_time
|
bigint
|
语句执行前的阻塞时间,包含语句解析和优化时间,单位ms。
|
start_time
|
timestamp with time zone
|
语句执行的开始时间。
|
finish_time
|
timestamp with time zone
|
语句执行的结束时间。
|
duration
|
bigint
|
语句实际执行的时间,单位ms。
|
estimate_total_time
|
bigint
|
语句预估执行时间,单位ms。
|
status
|
text
|
语句执行结束状态:正常为finished,异常为aborted。
|
abort_info
|
text
|
语句执行结束状态为aborted时显示异常信息。
|
resource_pool
|
text
|
用户使用的资源池。
|
control_group
|
text
|
语句所使用的Cgroup。
|
estimate_memory
|
integer
|
语句估算内存大小。
|
min_peak_memory
|
integer
|
语句在数据库实例上的最小内存峰值,单位MB。
|
max_peak_memory
|
integer
|
语句在数据库实例上的最大内存峰值,单位MB。
|
average_peak_memory
|
integer
|
语句执行过程中的内存使用平均值,单位MB。
|
memory_skew_percent
|
integer
|
语句数据库实例间的内存使用倾斜率。
|
spill_info
|
text
|
语句在数据库实例上的下盘信息: - None:数据库实例均未下盘。
- All:数据库实例均下盘。
- [a:b]:数量为b个数据库实例中有a个数据库实例下盘。
|
min_spill_size
|
integer
|
若发生下盘,数据库实例上下盘的最小数据量,单位MB,默认为0。
|
max_spill_size
|
integer
|
若发生下盘,数据库实例上下盘的最大数据量,单位MB,默认为0。
|
average_spill_size
|
integer
|
若发生下盘,数据库实例上下盘的平均数据量,单位MB,默认为0。
|
spill_skew_percent
|
integer
|
若发生下盘,数据库实例间下盘倾斜率。
|
min_dn_time
|
bigint
|
语句在数据库实例上的最小执行时间,单位ms。
|
max_dn_time
|
bigint
|
语句在数据库实例上的最大执行时间,单位ms。
|
average_dn_time
|
bigint
|
语句在数据库实例上的平均执行时间,单位ms。
|
dntime_skew_percent
|
integer
|
语句在数据库实例间的执行时间倾斜率。
|
min_cpu_time
|
bigint
|
语句在数据库实例上的最小CPU时间,单位ms。
|
max_cpu_time
|
bigint
|
语句在数据库实例上的最大CPU时间,单位ms。
|
total_cpu_time
|
bigint
|
语句在数据库实例上的CPU总时间,单位ms。
|
cpu_skew_percent
|
integer
|
语句在数据库实例间的CPU时间倾斜率。
|
min_peak_iops
|
integer
|
语句在数据库实例上的每秒最小IO峰值(列存单位是次/s,行存单位是万次/s)。
|
max_peak_iops
|
integer
|
语句在数据库实例上的每秒最大IO峰值(列存单位是次/s,行存单位是万次/s)。
|
average_peak_iops
|
integer
|
语句在数据库实例上的每秒平均IO峰值(列存单位是次/s,行存单位是万次/s)。
|
iops_skew_percent
|
integer
|
语句在数据库实例间的IO倾斜率。
|
warning
|
text
|
主要显示如下几类告警信息: - Spill file size large than 256MB
- Broadcast size large than 100MB
- Early spill
- Spill times is greater than 3
- Spill on memory adaptive
- Hash table conflict
|
queryid
|
bigint
|
语句执行使用的内部query id。
|
query
|
text
|
执行的语句。
|
query_plan
|
text
|
语句的执行计划。
|
node_group
|
text
|
语句所属用户对应的逻辑数据库实例。
|
cpu_top1_node_name
|
text
|
cpu使用率第1的节点名称。
|
cpu_top2_node_name
|
text
|
cpu使用率第2的节点名称。
|
cpu_top3_node_name
|
text
|
cpu使用率第3的节点名称。
|
cpu_top4_node_name
|
text
|
cpu使用率第4的节点名称。
|
cpu_top5_node_name
|
text
|
cpu使用率第5的节点名称。
|
mem_top1_node_name
|
text
|
内存使用量第1的节点名称。
|
mem_top2_node_name
|
text
|
内存使用量第2的节点名称。
|
mem_top3_node_name
|
text
|
内存使用量第3的节点名称。
|
mem_top4_node_name
|
text
|
内存使用量第4的节点名称。
|
mem_top5_node_name
|
text
|
内存使用量第5的节点名称。
|
cpu_top1_value
|
bigint
|
cpu使用率。
|
cpu_top2_value
|
bigint
|
cpu使用率。
|
cpu_top3_value
|
bigint
|
cpu使用率。
|
cpu_top4_value
|
bigint
|
cpu使用率。
|
cpu_top5_value
|
bigint
|
cpu使用率。
|
mem_top1_value
|
bigint
|
内存使用量。
|
mem_top2_value
|
bigint
|
内存使用量。
|
mem_top3_value
|
bigint
|
内存使用量。
|
mem_top4_value
|
bigint
|
内存使用量。
|
mem_top5_value
|
bigint
|
内存使用量。
|
top_mem_dn
|
text
|
内存使用量topN信息。
|
top_cpu_dn
|
text
|
cpu使用量topN信息。
|
n_returned_rows
|
bigint
|
Select返回的结果集行数。
|
n_tuples_fetched
|
bigint
|
随机扫描行数。
|
n_tuples_returned
|
bigint
|
顺序扫描行数。
|
n_tuples_inserted
|
bigint
|
插入行数。
|
n_tuples_updated
|
bigint
|
更新行数。
|
n_tuples_deleted
|
bigint
|
删除行数。
|
n_blocks_fetched
|
bigint
|
Cache加载次数。
|
n_blocks_hit
|
bigint
|
Cache命中数。
|
db_time
|
bigint
|
有效的DB时间花费,多线程将累加(单位:微秒)。
|
cpu_time
|
bigint
|
CPU时间(单位:微秒)。
|
execution_time
|
bigint
|
执行器内执行时间(单位:微秒)。
|
parse_time
|
bigint
|
SQL解析时间(单位:微秒)。
|
plan_time
|
bigint
|
SQL生成计划时间(单位:微秒)。
|
rewrite_time
|
bigint
|
SQL重写时间(单位:微秒)。
|
pl_execution_time
|
bigint
|
plpgsql上的执行时间(单位:微秒)。
|
pl_compilation_time
|
bigint
|
plpgsql上的编译时间(单位:微秒)。
|
net_send_time
|
bigint
|
网络上的时间花费(单位:微秒)。
|
data_io_time
|
bigint
|
IO上的时间花费(单位:微秒)。
|
is_slow_query
|
bigint
|
标记是否为慢查询。
取值为1时表示其为慢查询。
|