postgresql实例cpu居高不下,查询到原因是查询语句的索引使用不当,修改后cpu恢复正常,但是为什么PolarDB的cpu升高的只有主节点,而读节点正常?
CPU升高主要发生在主节点是因为主节点负责所有写入和大部分读取操作,包括处理索引不当的查询。当查询优化不足时,主节点需要做更多的计算工作,导致CPU使用率升高。读节点通常只处理复制过来的读请求,如果查询已经优化,它们的工作负载会相对较小,因此在索引调整后,读节点保持正常。建议持续监控并优化SQL,以保持整体性能。PolarDB CPU使用率高排查方法
总结来说,主节点CPU升高而读节点正常的原因在于:
主节点承担写操作:写操作和复杂的读操作直接发生在主节点上。
索引问题影响主节点查询效率:不当的索引使用导致主节点上执行的查询效率低下,消耗更多CPU资源。
读节点数据缓存:读节点能够利用数据缓存,减轻查询对CPU的需求,除非请求涉及未缓存的新数据。 此回答整理自钉群“PolarDB专家面对面 - 通用功能咨询”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。