大数据ClickHouse进阶(二十七):ClickHouse服务监控

2022-11-17 08:11:23 浏览数 (2)

​ClickHouse服务监控

一、系统表

在ClickHouse System库下的系统表中最要有三张表支撑了ClickHouse运行指标的查询,分别是:metrics、events和asynchronous_metrice。

1、metrics

metrics表用于统计ClickHouse服务在运行时,当前正在执行的概要信息,包括正在执行的查询总次数、正在发生的合并操作总次数等,查询方式如下:

代码语言:javascript复制
node1 :) select * from system.metrics limit 5;

2、events

events统计ClickHouse在运行过程中已经执行过的概要信息,包括总的查询次数、总的SELECT查询次数等,该系统表的查询方法如下:

代码语言:javascript复制
node1 :) select event,value from system.events limit 5;

3、asynchronous_metrics

asynchronous_metrics用于统计ClickHouse服务运行过程中当前正在后台异步运行的概要信息,包括当前分配的内存、执行队列中的任务数量等。该系统表的查询方法如下:

代码语言:javascript复制
node1 :) select * from system.asynchronous_metrics limit 5;

二、查询日志

查询日志重要的目前有3种类型,分别从不同角度记录了ClickHouse的操作行为,ClickHouse会为每种类型的查询日志自动生成相应的系统表以供查询。

1、query_log

query_log是最常用的查询日志,记录了ClickHouse服务中所有已经执行的查询记录。查询方式如下:

代码语言:javascript复制
node1 :) select type,concat(substr(query,1,20),'...') as query,read_rows,query_duration_ms as duration from system.query_log limit 5;

2、query_thread_log

query_thread_log系统表记录了所有线程的执行查询信息。查询方式如下:

代码语言:javascript复制
node1 :) select thread_name,concat(substr(query,1,20),'...') as query,query_duration_ms as duration,memory_usage as memory from system.query_thread_log limit 6;

3、part_log

part_log日志记录了MergeTree系列表引擎的分区操作日志。查询方式如下:

代码语言:javascript复制
node1 :) select event_type as type ,table ,partition_id,event_date from system.part_log desc limit 5;

除了上面介绍的系统表和查询日志之外,ClickHouse还能够与第三方监控系统集成。

0 人点赞