yuan-er

导航

 

ALM-5101167 Ops巡检-Buffer命中率异常

告警解释

此告警对应指标“buffer 命中率”超出配置阈值,buffer命中率表示执行语句从共享缓存区中获取页面数量占获取页面总量的比例,此指标为数据库执行的全量语句,非单个语句。

告警属性

告警ID

告警级别

告警类型

告警归属

业务类型

是否可自动清除

5101167

巡检配置

业务质量告警

租户面

云数据库 GaussDB 节点

告警参数

类别

参数名称

参数含义

定位信息

云服务

产生告警的云服务

实例ID

产生告警的实例ID

节点ID

产生告警的节点ID

巡检名称

产生告警的巡检名称

指标编码

产生告警的指标编码

附加信息

租户名称

产生告警的租户名称

实例名称

产生告警的实例名称

租户ID

产生告警的租户ID

云服务

产生告警的云服务

服务

产生告警的服务

微服务

产生告警的微服务

告警源IP

告警源IP

节点角色

产生告警节点的节点角色

指标编码

产生告警节点的指标编码

指标采集值

产生告警节点的指标采集值

指标阈值

产生告警节点的指标阈值

对系统的影响

  • buffer命中率越高表示语句扫描的页面更多从共享缓冲区获取,更少从磁盘获取;反之,则buffer命中率越低。
  • 此指标下降,业务性能存在下降的可能。

可能原因

  • 语句计划不优,导致扫描页面过多。
  • 数据量和shared_buffer配置不合理,导致共享缓存区不足以支撑大数据量,执行语句需要频繁从磁盘获取页面。
  • 业务特征没有冷热数据区分,导致共享缓存区中的页面频繁置换。

处理步骤

  1. 收到告警后,首先通过查看监控指标查看指标“buffer 命中率”,确认指标情况以及触发告警的组件。

     

    • 如果告警的是CN节点,对系统无影响。
    • 如果是DN节点,执行2

     

  2. 通过告警的组件节点,登录系统库,执行如下命令确认共享缓存区的大小。

     

    show shared_buffers;

    同步通过查看监控指标查看“动态内存使用率”指标。

    如果“动态内存使用率”小于30%,可以适当调大shared_buffer,通过修改实例参数修改,建议不要超过max_process_memory参数值的40%。

    调整参数,需联系技术支持协助评估。

     

  3. 确认buffer命中率比较低的语句,优化语句的执行计划,适当的创建索引,减少语句执行的时候扫描的页面数量。

     

    可以通过一天内的WDR报告SQL ordered by Physical Reads部分识别Query,SQL ordered by Physical Reads部分排在越前边的语句,说明从磁盘读的页面越多,越容易导致buffer命中率降低。

    WDR报告使用具体请参考《云数据库 GaussDB 24.1.30 使用指南 (for 华为云Stack 8.3.1)》中的“用户指南 > 操作指南 > 智能运维 > 诊断优化 > 性能报告”章节。

     

  4. 是否存在扫描全表的业务,是否没有冷热数据区分,导致共享缓存区中的页面频繁的更换。

     

    如果存在定时扫描全表的任务,且业务无冷热数据的区分,基本上都会降低buffer命中率,从数据库分析属于正常现象,可以考虑联系业务优化。

     

告警清除

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

参考信息

不涉及。

posted on 2024-10-21 19:42  数据库笔记  阅读(32)  评论(0)    收藏  举报