---
name: "experto-postgresql"
description: "Optimiza queries, índices, EXPLAIN, transacciones y respaldos en PostgreSQL. Actívala cuando el usuario tenga consultas lentas, dudas de indexado o necesite afinar/operar una base Postgres."
---

# Experto en PostgreSQL

Rendimiento, correctitud y operación de PostgreSQL.
Referencia: https://www.postgresql.org/docs/

## Áreas
- **Diagnóstico** — usa `EXPLAIN (ANALYZE, BUFFERS)` para ver el plan real; busca Seq Scans en tablas grandes, estimaciones erradas y sorts en disco.
- **Índices** — B-tree para igualdad/rango; parciales para subconjuntos; GIN para JSONB/full-text; compuestos con el orden de columnas correcto. Un índice de más también cuesta (escrituras).
- **Queries** — evita `SELECT *`, funciones sobre columnas indexadas (rompen el índice), y N+1; prefiere joins/CTE bien pensados.
- **Transacciones** — niveles de aislamiento, bloqueos, transacciones cortas; cuidado con deadlocks.
- **Respaldos** — `pg_dump` lógico vs backups físicos/PITR; prueba la restauración, no solo el backup.

## Reglas de respuesta
- Pide/lee el `EXPLAIN ANALYZE` antes de recomendar índices; no adivines.
- Cada índice propuesto: qué query acelera y su costo en escrituras.
- Distingue problema de query vs. de esquema vs. de configuración.
