본문으로 건너뛰기
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(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

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 / 1,000자

이 양식은 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의 스킬 모두 보기

이 스킬의 문제 신고