跳到正文
cccskills
免费在 GitHub 公开

database-indexing

PostgreSQL indexing: B-tree, GIN, GiST, composite, partial, covering, CONCURRENTLY, bloat detection.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane星标 3(GitHub 3 + cccskills 0)
集成工具PostgreSQL

实测评分 未实测

查看安装方法

包含的文件(4)

  • SKILL.md3.5 KB
  • references/anti-patterns.md651 B
  • references/checklists.md825 B
  • references/index-types.md986 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Database Indexing (PostgreSQL)

Diseñar, crear y mantener índices en Postgres 15+ en contexto multi-tenant Educabot.

Cuándo usar / NO usar

UsarNO usar
Queries lentas con Seq Scan en tablas grandesTablas <10k rows (Seq Scan suele ganar)
Schema nuevo: planificar índicesBooleans/enums baja cardinalidad (usar partial)
Revisión periódica: faltantes/no usadosAlta write, pocas reads
Bloat, REINDEX necesarioFull-text search → /search-setup
Multi-tenant: tenant_id primera columna compositeQuery puntual lenta → /query-optimization

Tipos de índices

B-tree (default, 95% de casos), GIN (arrays/jsonb/tsvector), GiST (geo/ranges), BRIN (tablas enormes ordenadas), Partial (filtro en definición), Covering/INCLUDE, Expression.

→ Read references/index-types.md for detailed type comparison table and JSONB indexing guide

Cuándo crear

  • WHERE con alta selectividad (>100 rows devueltos dilute beneficio)
  • JOIN (especialmente FKs)
  • ORDER BY / GROUP BY frecuentes
  • Constraints UNIQUE
  • Regla: query frecuente que escanea miles para devolver pocos → indexar

Composite indexes

Un índice (a, b, c) sirve para a, a,b, a,b,c — NO para b, c, o b,c solos (leftmost prefix).

Orden de columnas: igualdad primero (tenant_id =) → rango después (created_at >) → ORDER BY al final.

CONCURRENTLY en producción

Obligatorio en tablas grandes: no bloquea writes. No puede correr dentro de transacción — separar en su propia migration. Si falla queda índice INVALID → detectar con pg_index WHERE NOT indisvalid → DROP INDEX CONCURRENTLY.

Detectar faltantes

Consultar pg_stat_user_tables donde seq_scan > idx_scan AND n_live_tup > 10000. Luego revisar queries reales con pg_stat_statements.

Detectar no usados

Consultar pg_stat_user_indexes donde idx_scan = 0 tras 1 mes de observación. DROP INDEX CONCURRENTLY. Excepción: índices únicos que respaldan constraints.

Foreign keys

Postgres no crea índice automático en columnas FK. Sin índice cada DELETE/UPDATE en parent hace seq scan de child. Siempre crear índice en child FK.

EXPLAIN post-creación

Verificar con EXPLAIN (ANALYZE, BUFFERS). Planes esperables: Index Scan, Index Only Scan (ideal), Bitmap Heap Scan. Si Seq Scan → índice no se usa. Ver /query-optimization.

Bloat y REINDEX

B-tree se bloatea con updates/deletes. Monitorear con pgstattuple. Reparar: REINDEX INDEX CONCURRENTLY o pg_repack. Agendar trimestral para índices calientes.

Multi-tenant Educabot

Todo índice compuesto debe empezar por tenant_id para que RLS y queries filtradas lo aprovechen. Patrón: (tenant_id, student_id, period_id).

Anti-patterns

→ Read references/anti-patterns.md for 12 common indexing anti-patterns

Checklist

→ Read references/checklists.md for pre-creation checklist (11 items) and periodic maintenance checklist (5 items)

Delegación

  • /query-optimization — análisis de query lenta puntual
  • /search-setup — full-text search (tsvector, GIN)
  • /data-migrations — migraciones sin downtime, separación CONCURRENTLY
  • /db-diagram — diagramar schema

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Plan, design, and implement A/B tests and experiments with statistical rigor. Covers hypothesis frameworks, sample sizing, metrics, and result analysis.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Web/mobile accessibility decision guide: WCAG 2.2 AA, ARIA, keyboard nav, focus management, contrast, testing. Use for: a11y, accessibility, wcag, aria, screen reader, keyboard, contrast.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Generate, iterate, and scale ad creative for paid advertising across Google, Meta, LinkedIn, and X. Covers platform specs, creative frameworks, and quality validation.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Musica interactiva para juegos: layering vertical, re-secuenciacion horizontal, stingers, reglas de transicion con sync points, y mapeo de estados de gameplay a musica. Usar para: musica adaptativa, sistema de musica dinamica, transiciones musicales, combat music.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Design multi-agent systems, create agent architectures, define communication patterns, and build autonomous agent workflows with structured evaluation frameworks.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Inter-agent communication protocol for C-suite agent teams. Defines invocation syntax, loop prevention, isolation rules, response formats, and quality loops.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

查看 SebastianLuser 的全部技能

报告此技能的问题