更新时间:2026-07-03 GMT+08:00
分享

执行计划算子监控

执行计划算子历史监控数据

执行计划算子历史监控数据中记录了查询作业每个算子细粒度的执行进度信息(包括开始时间、执行时长、已处理行数、内存、下盘等),历史信息每5秒采集上报一次。

执行计划算子历史监控数据的字段如下表所示:

表1 执行计划算子历史监控数据字段

字段名称

类型

说明

session_id

text

语句的Session ID。

statement_id

text

语句ID。

endpoint_id

text

端点ID。

update_time

timestamp with time zone

当前上报时间。

query_id

text

debug_query_id,CN内部适用。

plan_node_id

int

执行计划中节点的唯一ID。

plan_node_name

text

执行计划中节点的名称。

start_time

timestamp

开始时间。

duration

bigint

执行时长。

status

text

当前状态。

query_dop

int

查询的并行度。

estimated_rows

bigint

预估的行数。

tuple_processed

bigint

当前已经处理完成的行数。

min_peak_memory

int

内存使用的最小峰值。

max_peak_memory

int

内存使用的最大峰值。

average_peak_memory

int

内存使用的平均峰值。

memory_skew_percent

int

内存使用倾斜百分比。

min_spill_size

int

下盘的最小数据量。

max_spill_size

int

下盘的最大数据量。

average_spill_size

int

下盘的平均数据量。

spill_skew_percent

int

下盘数据的倾斜百分比。

min_cpu_time

bigint

单个节点的最小CPU时间。

max_cpu_time

bigint

单个节点的最大CPU时间。

total_cpu_time

bigint

所有节点的总CPU时间。

cpu_skew_percent

bigint

CPU使用倾斜百分比。

warning

text

执行过程中出现的警告信息。

parent_id

int

父节点ID。

exec_count

int

该节点被执行的次数。

progress

text

执行进度百分比。

min_net_size

bigint

网络传输的最小数据量。

max_net_size

bigint

网络传输的最大数据量。

total_net_size

bigint

网络传输的总数据量。

min_read_size

bigint

单个节点读取的最小数据量。

max_read_size

bigint

单个节点读取的最大数据量。

total_read_size

bigint

所有节点读取的总数据量。

min_write_size

bigint

单个节点写入的最小数据量。

max_write_size

bigint

单个节点写入的最大数据量。

total_write_size

bigint

所有节点写入的总数据量。

执行计划算子实时监控数据

执行计划算子实时监控数据中记录了查询作业每个算子细粒度的执行进度信息(包括开始时间、执行时长、已处理行数、内存、下盘等),后台线程每5秒采样一次,实时监控数据只能获取最近一次采样时在执行的算子信息,对于执行结束的语句无法获取信息。

使用方式:

select * from pgxc_wlm_operator_statistics(query_id);

输入参数:

表2 函数输入参数

参数

类型

说明

query_id

text

语句的Query ID。

值为0输出全部Query的信息。

执行计划算子实时监控数据对外展示的字段如下:

表3 执行计划算子实时监控数据的字段

字段名称

类型

说明

session_id

text

语句的Session ID。

statement_id

text

语句ID。

username

text

用户名称。

query_id

text

debug_query_id,CN内部适用。

tid

bigint

线程ID。

plan_node_id

int

执行计划中节点的唯一ID。

plan_node_name

text

执行计划中节点的名称。

start_time

timestamp

开始时间。

duration

bigint

执行时长。

status

text

当前状态。

query_dop

int

查询的并行度。

estimated_rows

bigint

预估的行数。

tuple_processed

bigint

当前已经处理完成的行数。

min_peak_memory

int

内存使用的最小峰值。

max_peak_memory

int

内存使用的最大峰值。

average_peak_memory

int

内存使用的平均峰值。

memory_skew_percent

int

内存使用倾斜百分比。

min_spill_size

int

下盘的最小数据量。

max_spill_size

int

下盘的最大数据量。

average_spill_size

int

下盘的平均数据量。

spill_skew_percent

int

下盘数据的倾斜百分比。

min_cpu_time

bigint

单个节点的最小CPU时间。

max_cpu_time

bigint

单个节点的最大CPU时间。

total_cpu_time

bigint

所有节点的总CPU时间。

cpu_skew_percent

bigint

CPU使用倾斜百分比。

warning

text

执行过程中出现的警告信息。

parent_id

int

父节点ID。

exec_count

int

该节点被执行的次数。

progress

text

执行进度百分比。

min_net_size

bigint

网络传输的最小数据量。

max_net_size

bigint

网络传输的最大数据量。

total_net_size

bigint

网络传输的总数据量。

min_read_size

bigint

单个节点读取的最小数据量。

max_read_size

bigint

单个节点读取的最大数据量。

total_read_size

bigint

所有节点读取的总数据量。

min_write_size

bigint

单个节点写入的最小数据量。

max_write_size

bigint

单个节点写入的最大数据量。

total_write_size

bigint

所有节点写入的总数据量。

相关文档