任务描述

 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. 此处做记录,方便改造后验证

历史记录  
  1. 2022-07-25 11:42:32, 由 陈少军 创建。
  2. 2022-07-25 11:47:22, 由 陈少军 指派给 胡笑锋。
    修改了 预计剩余,旧值为 "0",新值为 "2"。
    参考解决方案优化
  3. 2022-07-27 09:39:47, 由 陈少军 完成。
    修改了 总计消耗,旧值为 "0",新值为 "1"。
    修改了 指派给 ,旧值为 "huxiaofeng",新值为 "chenshaojun"。
    修改了 实际完成,旧值为 "",新值为 "2022-07-27 09:39:00"。
    修改了 任务状态,旧值为 "wait",新值为 "done"。
    修改了 实际开始,旧值为 "0000-00-00 00:00:00",新值为 "2022-07-27 09:39:47"。
    修改了 预计剩余,旧值为 "2",新值为 "0"。
    修改了 由谁完成,旧值为 "",新值为 "chenshaojun"。
    线上已优化完成,验证后没有出现在慢sql列表里
  4. 2023-10-31 14:53:13, 由 周杰 关闭。
    修改了 任务状态,旧值为 "done",新值为 "closed"。
    修改了 指派给 ,旧值为 "chenshaojun",新值为 "closed"。
    修改了 由谁关闭,旧值为 "",新值为 "zhoujie"。
    修改了 关闭时间,旧值为 "0000-00-00 00:00:00",新值为 "2023-10-31 14:53:13"。
    修改了 关闭原因,旧值为 "",新值为 "done"。
所属迭代 系统管理部 - 系统服务优化
所属模块 /
相关需求 暂无
指派给 Closed 于 2023-10-31 14:53:13
任务类型 后端
任务标签 初始
开发组
任务状态 已关闭
进度 100%
优先级 P2
关键词
抄送给
由谁创建 陈少军 于 2022-07-25 11:42:32
由谁完成 陈少军 于 2022-07-27 09:39:00
由谁取消 暂无
由谁关闭 周杰 于 2023-10-31 14:53:13
关闭原因 已完成
最后编辑 周杰 于 2023-10-31 14:53:13
团队 最初预计 总计消耗 预计剩余
工时信息
最初预计 0工时
总计消耗 1工时
预计剩余 0工时
预计开始 2022-07-25
实际开始 2022-07-27
截止日期 2022-07-31