Database Index Advisor 技能:用 EXPLAIN 比较 PostgreSQL 联合索引
EnglishClaude Code 安装步骤
- 从 GitHub 固定提交获取完整的 `plugins/database/database-index-advisor/skills/analyzing-database-indexes` 目录。
- 复制到目标项目的 `.claude/skills/`,确认 `.claude/skills/analyzing-database-indexes/SKILL.md`,再从项目根目录启动 Claude Code,输入 `/analyzing-database-indexes`。
中文摘要
用 Claude Code 根据真实查询条件设计 PostgreSQL 索引,比较执行计划与缓冲区读取,并记录索引对存储和写入的影响。
SKILL.md 中文导读
可复现示例
生成 100,000 条 orders 数据,均匀分给 100 个 customer_id,日期跨 100 天。比较 customer_id=17 且 created_at 落在最后一周的查询,创建 (customer_id, created_at) 联合索引,再运行 ANALYZE orders 和同一条 EXPLAIN。工作步骤
- 先对查询运行 EXPLAIN (ANALYZE, BUFFERS),记录扫描方式、读取量及返回行数。
- 依据等值与范围条件提出联合索引。加到测试库后更新统计,并在同一条件下重跑执行计划。
验收方法
记录两次计划的扫描节点、实际返回行数和缓冲区统计。若优化器仍选顺序扫描,保留实际结果并核对选择性。
GitHub 原文 · 更新日期
适用环境
准备可写的一次性 PostgreSQL 数据库、psql 和合成订单表。若要分析真实负载,另需相应只读统计权限和代表性统计数据。
常见问题
看到顺序扫描,就说明必须创建索引吗?
先看匹配行比例、表大小、运行频次和写入成本。优化器对小表或高匹配比例可能合理地选择顺序扫描。
相关指南
相关推荐
groq-install-auth 技能
jeremylongshore/claude-code-plugins-plus-skills
anima-common-errors 技能
jeremylongshore/claude-code-plugins-plus-skills
apple-notes-hello-world 技能
jeremylongshore/claude-code-plugins-plus-skills
castai-hello-world 技能
jeremylongshore/claude-code-plugins-plus-skills
cohere-local-dev-loop 技能
jeremylongshore/claude-code-plugins-plus-skills
figma-security-basics 技能
jeremylongshore/claude-code-plugins-plus-skills