gaussdb dws CPU使用率超过阈值

【问题现象】

在前端FIM界面上观察集大部分节点的CPU使用率持续飚高,具体情况见下图:

ace.JPG

【问题分析】

1. 通过TOP命令查看gaussdb 进程的CPU使用率,可以观察到在CPU使用高峰的时候可以达到1000%+,当时截图没有保留,下图为示例。

adfjask.JPG

2. 使用 top -H -p pid查找进程内占用的CPU百分比较高的线程。

asdf.JPG

3. 根据线程的PID找到对应的语句

select * from pgxc_thread_wait_status t1, pgxc_stat_activity a1 where t1.query_id = a1.query_id and lwtid = xxxx ;

aam.JPG

通过上面的信息可以看到有两个长时间执行不完的查询语句导致的。

【解决办法】

  1. 临时将语句先kill 掉,观察集群CPU使用率明显下降。
  2. 对于用户调试性的语句可以配置异常规则, 设置参数statement_timeout,执行超时的语句数据库会自动给杀掉。
  3. 配置多租户,限制单个用户的CPU使用率,避免一个语句将所有CPU都消耗掉。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/bigdata/316582.html

(0)
上一篇 2025年10月29日 23:10
下一篇 2025年10月29日 23:13

相关推荐

发表回复

登录后才能评论