GuíaAvanzado

Guía de PostgreSQL Avanzado para Backend

Saca a PostgreSQL del modo "tabla relacional con índices" y úsalo a fondo como motor de aplicaciones backend serias. Esta guía cubre los features avanzados que el dev senior necesita cuando el motor estándar se queda corto: JSONB profundo con operadores y GIN indexes, full-text search en español como reemplazo viable de Elasticsearch, partitioning nativo para tablas masivas (>10M filas), materialized views para construir analytics in-DB, advisory locks que reemplazan a Redis para coordinación distribuida, savepoints para nested transactions con SQLAlchemy, extensiones útiles (`pg_trgm`, `citext`, `uuid-ossp`, `hstore`) con decision matrix de cuándo usar cada una, y CTEs recursivas para jerarquías (categorías anidadas, org charts) y grafos. Cierra el sub-track Data Layer del path Backend Python con un proyecto final integrador: refactorizar el Blog API con todos los features y medir con benchmarks.

64
lecciones
8
módulos
Inglés · Español
disponible en
certificado
Gratis
acceso
NIEVA

Resultados

Lo que vas a poder hacer

  • Usar JSONB a profundidad: operadores (`->`, `->>`, `@>`, `?`, `#>`), JSON Path queries, GIN indexes (`jsonb_ops` vs `jsonb_path_ops`), partial e expression indexes
  • Traducir patterns JSONB de forma idiomática a SQLAlchemy 2.0: `Mapped[dict]`, `func.jsonb_extract_path_text`, `MutableDict`, updates parciales con `jsonb_set`
  • Implementar full-text search en español con `tsvector`/`tsquery`, ranking con `ts_rank_cd`, diccionarios multilingual y `unaccent` para búsqueda sin acentos
  • Combinar FTS con `pg_trgm` para fuzzy matching, autocomplete y typo tolerance — y decidir conscientemente cuándo PostgreSQL FTS reemplaza Elasticsearch
  • Particionar tablas masivas (>10M filas) con range/list/hash, aprovechar partition pruning y automatizar mantenimiento con `pg_partman`
  • Construir analytics in-DB con materialized views, refresh `CONCURRENTLY`, indexes en MVs y refresh strategies (cron, app-driven, trigger-driven)
  • Reemplazar Redis para distributed locks con `pg_advisory_lock` / `pg_try_advisory_lock` (session vs transaction-level) — y saber cuándo Redis sigue siendo mejor opción
  • Manejar nested transactions con savepoints y `session.begin_nested()` para batch processing donde fallos parciales no destruyen toda la transacción
  • Elegir entre extensiones: `pg_trgm` vs FTS, `citext` vs `LOWER`, `uuid-ossp` vs `gen_random_uuid` (PG 13+), `hstore` vs JSONB
  • Escribir CTEs recursivas (`WITH RECURSIVE`) para jerarquías (categorías anidadas, org charts), grafos y breadcrumbs

Antes de empezar

Qué necesitas traer

Es para ti si...

  • Backend Python devs senior con apps FastAPI en producción donde el motor PostgreSQL "estándar" se queda corto
  • Devs evaluando agregar Elasticsearch al stack solo para búsqueda — y quieren verificar primero si PostgreSQL FTS alcanza
  • Equipos con tablas masivas (>10M filas) decidiendo entre partitioning, sharding o migración a un motor OLTP especializado
  • Devs construyendo dashboards y analytics in-DB que necesitan materialized views bien diseñadas
  • Devs usando Redis solo para distributed locks que quieren simplificar el stack
  • Senior devs preparándose para entrevistas técnicas donde se pregunta "¿cuándo JSONB vs MongoDB?", "¿cómo escalar una tabla de 100M filas?" o "¿cómo implementarías búsqueda?"

Requisitos y materiales

  • Guía PostgreSQL & SQLAlchemy completada (o equivalente: SQL, ACID, B-tree indexes, EXPLAIN básico, SQLAlchemy ORM con relationships, Alembic)
  • Guía Database Performance & Query Tuning completada (o equivalente: EXPLAIN profundo, indexing avanzado, N+1, profiling, pooling)
  • Guía SQL Patterns for Production APIs completada (o equivalente: cursor pagination, soft deletes, audit logs, multitenancy con RLS, zero-downtime migrations)
  • App FastAPI funcional con SQLAlchemy 2.0 async y datos reales
  • PostgreSQL 14+ instalado local o en Docker (16+ recomendado para algunos features)

Contenido

El temario, módulo por módulo

Abre cualquiera para ver sus lecciones.

Dónde encaja

Esta guía es parte de algo más grande

Se estudia dentro de estos programas, con acompañamiento y fechas.

Dudas frecuentes

Lo que suele preguntarse

Empieza cuando quieras

Reseñas

Lo que dicen los estudiantes

Estas reseñas son de estudiantes inscritos que completaron al menos el 50% del curso. Moderamos las reseñas solo por motivos de contenido (spam, lenguaje ofensivo, datos personales), nunca por ser críticas o negativas.

Aún no hay reseñas aprobadas.

¡Sé el primero en compartir tu experiencia!