SQL 查询优化技能 Skill 技能
用索引模式治好数据库慢查询
SQL 查询优化技能:用索引模式治好数据库慢查询
技能简介
SQL 查询优化技能(sql-optimization-patterns)是面向数据库开发者的实战指南型技能,专注于解决"慢查询拖垮接口、抬高数据库成本"这一经典难题。它把庞大的数据库调优知识压缩成一套可操作的决策框架,覆盖执行计划解读、索引选型、分页改写、批量写入与日常维护策略。无论你面对的是 PostgreSQL 还是 MySQL,是线上偶发超时还是报表查询越跑越慢,它都能给出有条理的排查与验证路径,让你在不"拍脑袋加索引"的前提下,找到真正有效的那一处改动。
核心能力
- 执行计划解读:讲清 EXPLAIN 计划中的扫描方式、连接类型、代价估算、预估行数与实际耗时等关键指标,帮助快速定位瓶颈来源。
- 索引模式库:系统梳理 B-tree、GIN、BRIN、部分索引、表达式索引、复合索引与覆盖索引等模式的适用条件。
- 反模式纠错:演示如何避免 N+1 查询、大 OFFSET 分页、关联子查询等常见性能陷阱。
- 批量与聚合技巧:覆盖聚合优化、批量插入、批量更新、物化视图与表分区等技术手段。
- PostgreSQL 监控查询:内置慢查询、缺失索引、未使用索引等运维监控 SQL,便于持续观测。
- 常见坑位提醒:点明过度索引、隐式类型转换、前导通配符、过滤列上使用函数等易忽略问题。
安装配置
- 确认已安装 Node.js 环境,以便使用 skillstore 命令行工具。
- 执行安装命令:
npx skillstore add wshobson/sql-optimization-patterns。 - 该技能支持 Claude、Codex、Claude Code 等主流 AI 编程工具,安装后即可在对应工具中调用。
- 仓库地址见官方链接,采用 MIT 许可,可自由查看与二次参考;注意技能本身不连接数据库,所有建议需在你的真实库上验证。
使用步骤
- 采集现状:先把慢查询语句、EXPLAIN(或 EXPLAIN ANALYZE)输出、表结构与行数等信息提供给 AI。
- 定位瓶颈:让技能分析执行计划,识别是缺索引、扫描方式不佳,还是查询写法本身存在问题。
- 获取候选方案:向技能索取索引候选或查询改写思路,并要求说明读收益、写代价与验证方法。
- 小步验证:在贴近生产数据量的环境逐条测试改动,用前后执行计划与耗时对比确认效果。
- 沉淀与监控:把验证有效的模式固化下来,并借助监控查询持续观察索引使用情况。
适用场景
- 修复线上慢接口:针对偶发超时的查询,快速判断是索引缺失还是分页/子查询写法问题。
- 索引策略评审:在改动生产库表结构前,对比缺失索引、未使用索引与重叠索引的取舍。
- 报表负载优化:针对大型分析型查询,考虑聚合、物化视图与分区等组合方案。
- 数据库调优教学:作为团队内 SQL 性能优化的培训与自查清单,统一排查思路。
适用人群
后端工程师、数据库管理员、数据工程师,以及需要排查线上数据库性能问题但又不想盲目加索引的 AI 编程工具使用者。
工作原理
技能本身提供的是结构化的优化知识与决策流程,而非直接操作数据库的脚本。它依据用户提供的查询语句与执行计划,结合索引模式库和反模式清单,推断最可能的性能瓶颈,再给出候选改动方案。所有结论都建立在"先测量、后修改、再对比"的验证流程之上,强调用真实数据量做测试,避免在小规模开发数据上得出误导性结论。
官方链接
团队信息
AI产品库
官方
由 AI 猎手自动发现
评论与建议
登录 后参与评论或提建议