更新时间:2026-04-22 GMT+08:00
分享

ALM-45454 ClickHouse存在写入过快的表

本章节仅适用于MRS 3.5.1及之后版本。

告警解释

系统每天检测前一天ClickHouse节点上是否存在写入频次过快的表,如果检测到存在,则系统产生告警。写入频次阈值通过ClickHouse服务配置参数MAX_INSERT_NUMBER_PER_SECOND查看和调整。

当系统检测到前一天ClickHouse节点上不存在写入频次过快的表,则告警自动清除。

告警属性

告警ID

告警级别

是否可自动清除

45454

重要

告警参数

类别

参数名称

参数含义

定位信息

来源

产生告警的集群或系统名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

对系统的影响

当表的写入频次过快时,可能导致系统负载过高,甚至出现写入失败的情况。

可能原因

业务未做攒批写入。

处理步骤

  1. 登录FusionInsight Manager页面,选择“运维 > 告警 > 告警”,查看当前告警“定位信息”中的角色名以及确认主机名所在的IP地址。
  2. 以客户端安装用户,登录客户端的节点,执行如下命令:

    cd {客户端安装路径}

    source bigdata_env

    • 集群已启用Kerberos认证(安全模式):

      kinit 组件业务用户

      clickhouse client --host 上报告警的ClickHouseServer实例IP --port 9440 --secure

    • 集群未启用Kerberos认证(普通模式):

      clickhouse client --host 上报告警的ClickHouseServer实例IP --user 用户名 --password --port 9440

  3. 执行以下语句,查询写入频次过快的表有哪些:

    select tables, cnt from (with toStartOfInterval(event_time,toIntervalSecond(600)) As time_ SELECT time_ , tables, count() as cnt FROM system.query_log WHERE type='QueryFinish' and query_kind = 'Insert' and event_date = '${alarm_date}' GROUP BY time_, tables) where cnt >= (${MAX_INSERT_NUMBER_PER_SECOND} * 600);

    • alarm_date:告警发生的前一天,比如告警发生在2025年2月20日,则此处时间为:2025-02-19。
    • MAX_INSERT_NUMBER_PER_SECOND:写入频次阈值,请登录FusionInsight Manager页面,选择“集群 > 服务 > ClickHouse > 配置 > 所有配置”查询。

  4. 根据步骤 3查询到的结果,进行业务整改。

收集故障信息

  1. 在FusionInsight Manager界面,选择“运维 > 日志 > 下载”。
  2. 在“服务”中勾选待操作集群的“ClickHouse”。
  3. 在“主机”中选择异常的主机,单击“确定”。
  4. 单击右上角的时间编辑按钮,设置日志收集的“开始时间”和“结束时间”分别为告警产生时间的前后1小时,单击“下载”。
  5. 请联系运维人员,并发送已收集的故障日志信息。

告警清除

此告警修复后,系统会自动清除此告警,无需手工清除。

参考信息

不涉及。

相关文档