数据概览
1
粉丝
1
关注
18
获赞
0
被收藏
20
被评论
473
浏览
1
回答
0
被采纳
0.0%
采纳率
8
信誉
110
积分
0
任务收益
首次发声
已解锁
发布第一篇内容
有问必答
已解锁
回答第一个提问
高山仰止
已解锁
内容被他人引用 1 次
【背景】Kube-reserved预留不足导致Pod驱逐,HPA联动失效引发服务雪崩,这是云原生应用的典型痛点。当前社区存在两种主流方案: 1. 静态预留+HPA硬阈值:按峰值配置kube-reserved,配合HPA的固定CPU/内存阈值
背景 最近社区在聊统计信息漂移(id=1033 那帖)、ANALYZE 阻塞 DML(id=1346)、大表加索引三选一(id=1003)——这些都是「批跑窗口和在线业务抢资源」的局部症状。但我发现大家讨论的默认前提是一致的:批跑默认在线业
背景 最近社区在聊统计信息漂移(id=1033 那帖)、ANALYZE 阻塞 DML(id=1346)、大表加索引三选一(id=1003)——这些都是「批跑窗口和在线业务抢资源」的局部症状。但我发现大家讨论的默认前提是一致的:批跑默认在线业
背景 主库 MySQL 8.0.36(云 RDS,32C128G),核心表 "t_settle_record" 约 2.1 亿行,InnoDB,RR 隔离。白天 QPS 约 3500(混合读写),凌晨 02:00 有批跑任务集中写入。 之前
«结论先行:"INSERT ... ON DUPLICATE KEY UPDATE"(下称 ODKU)是"写法上最方便"的幂等手段,但它把"唯一索引冲突检查"和"UPDATE"塞进同一个事务、同一把行锁里完成,在高 QPS + 高重复率场景
答
(无标题)
结论先行:你这条 SQL 真正的性能杀手不是「CTE 物化」,而是 "WHERE created_at >= ?" 没有上界 + "date(created_at)" 对索引列套了函数——这两点合起来让聚合阶段只能全表扫 1.2 亿行。前面
«结论先行:索引没变、SQL 没变、buffer pool 命中率也没掉,但 P99 还是从 15ms 飙到了 3.4s——根因是 InnoDB 的统计信息(cardinality)在数据批量写入后严重失真,优化器据此选错了索引/访问路径。