暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【GaussDB内核资源】SQL响应时间异常

Olivia 2023-08-04
122

【常见场景】
1数据库某种资源使用达到上限,导致线程池满,业务语句整体时延上涨;

2 底层IO故障,触发数据库D状态,业务语句时延上涨;

3单个语句执行时间超长,拉高整体指标,但大部分业务运行正常;

4 某种操作导致短时间出现大量慢SQL。

【基本处理方法】
步骤1:收到告警后首先查看OPS指标监控,确认并记录指标异常的开始时间;若持续出现此问题,需要立刻确认业务影响,若业务侧感知明显,需要立即联系华为工程师

步骤2:观察OPS指标监控,按指标展示,查看是否有其他指标出现联动变化,包括但不限于CPU占用率,线程池使用率,数据磁盘读/写吞吐,动态内存使用率,未落盘脏页数等指标,若以上指标出现联动变化,则说明大概率是故障或者业务请求发生变化触发场景1,引起数据库某种资源使用达到上限,导致的时延上涨,需要进一步分析对应指标,确认问题原因。若CPU或磁盘读写吞吐或未落脏页数量明显上涨,单个指标明显上涨,其他指标无明显变化,则可能是触发了场景4,由于某种数据库操作触发了很多慢SQL,导致P95上涨,此时需要进一步登陆数据库实例,连接数据库,查询对应时间点的gs_asp视图进行分析;

步骤3:如果从指标上没有看到明确的指标联动变化,那么大概率是触发了场景3,由于业务侧的某条执行时长超长的语句导致的整体时延指标上涨,此时其他业务正常运行,需要登陆数据库,查看pgxc_stat_activity,确认是否有长语句正在执行,或者查看gs_asp,确认是否历史上有长语句执行;

步骤4:排除以上场景后,若发现单个节点(CN或DN)的动态内存使用率明显高于其他节点,则有可能是触发了场景2,此时需要登陆到对应节点上,查看$GAUSSLOG下面的cm/cm_agent日志,确认对应时间点gaussdb进程是否出现了D状态,若出现D状态,则有可能是由于底层IO故障导致,需要确认对应时间点的底层存储和IO情况(包括数据盘和日志盘);

步骤5:若非以上场景,请联系华为工程师。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论