Trino WebUI说明


发布于 2024-11-23 / 34 阅读 / 0 评论 /
Trino WebUI的使用

使用Trino Web UI可以进行任务的监控。

1.集群级监控信息

在Cluster Overview页面,如下图所示:

1.1.Running Query——运行中的查询任务数

当前正在运行的查询总数,所有用户的查询都会计入。

1.2.Queued Query——队列中的查询任务数

Trino集群中所有用户在队列中等待的查询任务总数。基于资源组的配置,Coordinator调度在队列中等待的查询。

1.3.Blocked Query——阻塞的查询任务数

集群中阻塞的查询任务总数,由于缺少必要的split或其他资源,阻塞的查询任务无法继续执行。

1.4.Active Worker——活跃的Worker节点数

集群中活跃的工作节点数量。通过手动或自动扩展添加或删除任何工作节点时,这些节点都会注册到discovery service上,因此现实的数字会据此更新。

1.5.Runnable Driver——可运行的驱动数

集群中可运行的驱动程序平均数。

1.6.Reserved Memory——预留内存

Trino中所有预留内存的总量,以字节为单位。

1.7.Rows/Sec——行/秒

集群上运行的所有查询任务每秒处理的数据行总数。

1.8.Bytes/Sec——字节/秒

集群上运行的所有查询任务每秒处理的数据总量,以字节为单位。

1.9.Worker Parallelism——工作节点并行度

工作节点的并行度总量,也就是集群中所有查询任务运行时在所有工作节点上消耗的线程CPU时间片总量。

2.任务列表信息

Trino Web UI仪表盘下方就是最近执行的查询任务列表信息。

2.1.查询任务ID

查询ID的格式为“YYYYMMDD_HHMMSS_{递增计数器}_{随机标识符}”

其中,递增计数器表示Coordinator启动以来,这是第几个查询任务。比如“0007”表示这是Coordinator启动以来的第7个查询任务。

随机标识符表示Coordinator的随机标识符。

递增计数器和随机标识符和Coordinator绑定,在Coordinator重启时都会被重置。

2.2.任务提交用户信息

每个任务信息中都包含运行次查询任务的终端用户、查询来源、用户组。

最典型的查询来源是trino-cli。

2.3.任务状态信息

最常见的任务状态有:

(1)RUNNING:运行中

(2)FINISHED:已完成

(3)USER CANCELLED:用户取消,表示用户终止了查询。

(4)USER ERROR:用户错误,表示用户提交的SQL查询存在语法错误或语义错误。

2.4.任务运行信息

包含任务运行时的数据统计,统计信息排列如下表所示:

Completed Splits,查询任务已完成的切片数量。

Running Splits,运行中的查询任务切片数量。

Queued Splits,查询任务执行时队列中的切片数量。

Wall Time,执行查询任务已花费的时间总和。

Total Wall Time,总执行时间,表示提交查询任务到接收完结果所观察到的总时间。与Wall Time类似,但此值包含了队列时间,而Wall Time本身不包含查询任务在队列中等待的时间。

CPU Time,处理查询任务花费的CPU时间片总和。这个值通常比时钟大,因为并行的工作节点及其线程的时间都是独立统计并累加起来的。

Current Total Reserved Memory,当前查询任务执行所使用的总预留内存量。对于已完成的查询任务,这个值为0。

Peak Total Memory,查询任务执行过程中所使用的峰值总内存量。查询执行中的特定操作可能需要很大的内存,此统计值非常有用。

Cumulative User Memory,整个查询任务执行过程中使用的累计用户内存量。

3.查询任务细节视图

Web UI提供了针对每个查询更细节的信息。

overview页面提供了以下信息:

(1)Session:会话信息

(2)Execution:执行信息

(3)Resource Utilizations Summary:资源使用概览信息

(4)Timeline:时间线信息

(5)Query:查询信息

(6)Prepare Query:准备的查询信息

3.7.Stages——阶段

Stages区域中每个阶段展示的数值解释如下。

3.7.1.Time块

包含以下三个字段:

(1)SCHEDULED:此阶段中所有任务完成之前,处于调度中状态的任务的总时间。

(2)BLOCKED:此阶段因等待数据而被阻塞的总时间。

(3)CPU:此阶段中任务花费的CPU时间片总和。

3.7.2.Memory块

包含以下四个字段:

(1)CUMULATIVE:运行此阶段所花费的累计内存量,这个值并不表示某个时刻用了这么大的内存量,而是任务执行过程中申请使用的内存量总和。

(2)CURRENT:此阶段当前使用的总预留内存量。对于已完成的任务,此值为0。

(3)BUFFERS:当前等待处理的数据占用的内存量。

(4)PEAK:此阶段使用的峰值内存量。

3.7.3.Tasks块

包含以下四个字段:

(1)PENDING:此阶段处于等待状态的任务数量。

(2)RUNNING:此阶段正在执行的任务数量。

(3)BLOCKED:此阶段处于阻塞状态的任务数量。

(4)TOTAL:查询完成的任务数量

(5)SCHEDULED TIME SKEW:调度时间

(6)CPU TIME SKEW:CPU时间

(7)TASK SCHEDULED TIME:任务调度时间

(8)TASK CPU TIME:任务CPU时间

3.8.任务信息

在Stages下方,有更多的任务信息,以表格形式呈现,表头字段如下:

(1)ID:任务标识符,格式为“{stage-id}.{task-id}”。比如,1.2表示阶段1的任务2

(2)Host:运行此任务的工作节点的IP地址。

(3)State:任务的状态,可能有RUNNING、BLOCKED、PENDING。

(4)Pending Splits:任务处于PENDING状态的切片数量。

(5)Running Splits:正在运行的任务切片数量。

(6)Blocked Splits:阻塞状态的任务切片数量。

(7)Completed Splits:已完成的任务切片数量。

(8)Rows:任务处理过的数据行数。

(9)Rows/s:任务每秒处理的数据行数。

(10)Bytes:任务处理的数据字节数。

(11)Bytes/s:任务每秒处理的数据字节数。

(12)Elapsed:任务执行经历的时钟时间。

(13)CPU Time:任务花费的CPU时间片总和。

(14)Mem:任务当前使用的内存量。

(15)Peak Mem:任务执行期内存消耗的最高峰值。

3.9.Live Plan

实时计划标签页可以让你实时观察Trino集群执行查询处理的过程。

3.10.Stage Performance

查询结束后,Stage Performance视图可以提供有关查询性能细节的可视化