1. 问题分析
华为Gaussdb 智能刊登hwy-zh-gz-gauss-marketpublish:
分析发现:
主节点:周期性cpu 100%(12:30,4:30,8:30),其他时段cpu60%以下
读节点:cpu 60%以下
读节点:cpu 60%以下
目前华为的已是最高配置:60 vCPUs | 256 GB
目前要解决的问题是:
把主节点周期性里cpu100% 的问题是,这些周期性cpu100%的sql,
如01.sql 慢SQL
2.解决方案
目前是批量:DELETE语句平均删除19万行数据,大表删除数据需要修改主键和二级索引,性能差。
解决方案:
2.1 将每次删除19万修改为每次删除1万,delete语句后面增加limit 10000,用delete limit xxx的形式,不要用delete limit xx,xx的方式
2.2 如果改造后CPU还是会打满的话,建议降低这个delete sql操作的并发量
3.慢01.sql
DELETE FROM `M_Wish_Express_Listing`
WHERE `CustomerId` = 1
AND `OrderSourceId` = 10157
AND NOT (`WarehouseId` IN ('5f2a933fcb4cccf3cc90b3e8', '5f2a8bda274f8d4e1149cc8b', '60a4f34b046aa78631c9b7f0', '60b84562f6f9822ed520150a', '5f2a8c8cdbe818d0a5aaeaee', '60b84561f6f9822ed5201504', '60a4f352046aa78631c9b808', '5f2a8ac3bb554e3c44fac098', '5f1174516ca6778ac3fa8984', '5f2a8dfd29e786057fed7c71'));
4. 此处做记录,方便改造后验证