GaussDB(DWS)集群中寻找节点CPU占用高的语句

gaussdb,dws,集群,寻找,节点,cpu,占用,语句 · 浏览次数 : 29

小编点评

**摘要:** 本文通过实例说明如何使用gs_cpuwatcher.sh脚本寻找集群内节点占用CPU的高语句。该脚本使用`gs_cpuwatcher`工具,可以监控集群内的所有节点的CPU占用情况。 **主要参数:** * `-n`:指定要监控的节点数量。默认值为1,即监控所有节点。 **使用方法:** 1. 将`gs_cpuwatcher.sh`文件放到一个磁盘空间充足的目录中。 2. 使用`nohup`命令将脚本放到后台执行: ```bash nohup sh gs_cpuwatcher.sh > cpuwatcher.log 2>&1 & ``` **最佳实践:** * 监控时间长,例如3天。 * 使用`grep`命令可截取日志中的特定字段,以便进行分析。 * 可以根据需要修改`gs_cpuwatcher.sh`脚本的字段解释。 **结果分析:** 监控日志中的记录将包括 CPU 使用率、开始时间、状态改变时间、用户名称、数据库名称、 SQL 查询 ID 和线程状态等信息。可以使用`grep`命令根据需要筛选这些信息。

正文

摘要:本文主要通过实例讲解如何通过gs_cpuwatcher.sh 脚本寻找CPU占用高语句。

本文分享自华为云社区《GaussDB(DWS) gs_cpuwatcher.sh 脚本如何寻找CPU占用高语句》,作者:fighttingman。

【工具名称】

gs_cpuwatcher

【功能描述】

1.寻找集群内节点占用CPU高的语句

【使用场景】

  1. CPU sys使用率高
  2. 业务整体慢

【参数说明】

【使用方法】

  1. 直接后台执行命令

nohup sh gs_cpuwatcher.sh > cpuwatcher.log 2>&1 &

执行之前注意事项:

  • 使用omm用户(线下)或者Ruby用户(线上)执行
  • 将脚本放到一个磁盘空间充足的目录执行,防止把磁盘空间占满,脚本监控会产生日志,占用磁盘空间,磁盘空间最好大于20G
  • 监控完之后kill这个监控进程,防止忘记这个脚本造成监控日志一直上涨,脚本默认保留3天的日志
  • 脚本只有在进程的cpu使用率大于100(多核累加和)的时候才会进行查询cpu高的语句

【最佳实践&结果分析】

执行监控命令之后,检查当前目录生成的监控日志

查看日志cpu_watch_xxx.log日志,里边有记录占用CPU高的语句

日志里边记录了cpu占用高的语句,例如上图中select * from pg_class a, pg_class,脚本默认截取sql的前50个字符,可以对截取字符串进行修改,需要修改脚本

字段解释:

  1. dur :执行时长
  2. start:sql的起始时间
  3. state_change:sql状态改变时间
  4. usename:用户名称
  5. datname:连的数据库名称
  6. query_id:sql的唯一标识id
  7. pid:线程id
  8. client_addr:客户端连的ip
  9. state:sql的执行状态
  10. lwtid:线程小号
  11. wait_status:等待视图中的等待状态字段
  12. substr:sql字段

 

点击关注,第一时间了解华为云新鲜技术~

与GaussDB(DWS)集群中寻找节点CPU占用高的语句相似的内容:

GaussDB(DWS)集群中寻找节点CPU占用高的语句

摘要:本文主要通过实例讲解如何通过gs_cpuwatcher.sh 脚本寻找CPU占用高语句。 本文分享自华为云社区《GaussDB(DWS) gs_cpuwatcher.sh 脚本如何寻找CPU占用高语句》,作者:fighttingman。 【工具名称】 gs_cpuwatcher 【功能描述】

ETL服务器连接GaussDB(DWS)集群客户端配置

问题描述:给ETL的服务器上安装gsql的工具,用来连接GaussDB(DWS)集群,做数据抽取用 DWS:GaussDB(DWS) 8.2.1-ESL 1.获取软件包 登录FusionInsight Manager系统,在“集群”下拉列表中单击需要操作的集群名称。选择“更多 >->下载客户端->下

5个高并发导致数仓资源类报错分析

摘要:集群运行过程中,有时候会执行并发量比较高的业务场景,一些数据库没有为这种高并发作业配置合适的参数,会导致作业大量报错,这篇文章让你玩转并发作业。 本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】在线运维 - 高并发导致资源类报错分析解决》,作者:323老四。 集群运行过程中,有

详解集群级备份恢复:物理细粒度备份恢复

摘要:在实际使用过程中,数据库集群级的故障并非高概率事件,如何安全高效地帮助客户备份恢复一部分数据库元素,才是更加实际的需求,这也是细粒度备份恢复的意义所在。 本文分享自华为云社区《GaussDB(DWS)之物理细粒度备份恢复》,作者:我的橘子呢 。 1. 认识物理细粒度备份恢复 相对于集群级备份恢

数仓在线运维:如何进行在线增删CN?

摘要:集群运行过程中,根据集群的综合负载和业务接入情况进行分析:增加CN可以适当降低CPU消耗,增大接入连接数,分散CN节点业务压力,根据实际情况来识别是否要增加CN,如果是提升集群容量和扩展比能力,建议进行扩容操作。 本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】在线运维-在线增

GaussDB(DWS)条件表达式函数返回错误结果集排查

摘要:条件表达式函数中出现结果集不一致问题,我们首先要考虑是否入参数据类型不一致导致出参不一致。 本文分享自华为云社区《GaussDB(DWS)条件表达式函数返回错误结果集排查》,作者:yd_211369925 。 (一)案例背景 客户使用greatest获取并返回参数列表中值最大的表达式的值,子查

看完这篇,DWS故障修复不再愁

摘要:本文详细梳理分析了DWS服务面临软硬件故障场景和对应的修复原理,希望借此能够让你对DWS的集群故障修复有个全面深入的了解。 本文分享自华为云社区《GaussDB(DWS)故障修复系统性介绍》,作者: 闻鲜生。 DWS是一个分布式架构的MPP集群,物理部署上涉及数百数千台主机和对应的磁盘,以及这

解密数仓高可用failover流程

摘要: Gaussdb的HA采用主备从的架构实现数据可靠性。当主DN发生故障时,备DN走failover流程,升级成为新主DN,保证集群不因单DN故障而中断业务。 本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】dws高可用之failover流程大解密》,作者:fxy0224。 众所

带你认识数仓的增量备份核心设计

摘要:增量备份是重要的常规备份策略,正确快速识别增量变化文件的相关信息对增量备份至关重要。 本文分享自华为云社区《其疾如风,GaussDB(DWS)增量备份核心设计》,作者: 我的橘子呢 。 1、认识增量备份 GaussDB(DWS)数仓的备份恢复工具Roach支持集群级增量备份。全量备份会将源数据

GaussDB(DWS)迁移实践丨row_number输出结果不一致

摘要:迁移前后结果集row_number字段值前后不一致,前在DWS上运行不一致。 本文分享自华为云社区《GaussDB(DWS)迁移 - oracle兼容 --row_number输出结果不一致》,作者:譡里个檔 。 【问题表现】 迁移前后结果集row_number字段值前后不一致,前在DWS上运