更新时间:2025-12-11 GMT+08:00
分享

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

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

告警解释

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

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

告警属性

告警ID

告警级别

告警类型

业务类型

是否可自动清除

45454

重要

业务质量告警

ClickHouse

告警参数

类别

参数名称

参数含义

定位信息

来源

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

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

对系统的影响

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

可能原因

业务未做攒批写入。

处理步骤

  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. 请联系运维人员,并发送已收集的故障日志信息。

告警清除

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

参考信息

不涉及。

相关文档