← Cursos
🎓
AvanzadocourseAcceso por bootcamp
Database Performance & Query Tuning Guide
64
Lecciones
8
Módulos
🎓
Acceso por bootcamp
Lo que aprenderás
✓Leer query plans de PostgreSQL con confianza (cost, rows, buffers, JIT, scan types) y diagnosticar por qué cualquier query es lenta
✓Diseñar índices avanzados que el planner realmente usa: composite (con leftmost prefix), covering (INCLUDE), partial (WHERE), expression e intro a GIN
✓Detectar y eliminar el problema N+1 en SQLAlchemy con `joinedload`, `selectinload` y la lib `nplusone`
✓Hacer profiling de queries en producción con `pg_stat_statements` y `auto_explain` para identificar las queries más caras sin adivinar
✓Configurar PgBouncer (transaction vs session) y tunear pools async para FastAPI + asyncpg sin colapsar bajo carga
✓Tunear estadísticas y autovacuum para que el planner tome buenas decisiones y evitar bloat en tablas MVCC
✓Reconocer y refactorizar anti-patterns que rompen al escalar: OFFSET grande, COUNT(*) en tablas masivas, over-indexing, premature optimization
✓Medir mejoras de performance con benchmarks before/after cuantificados usando `wrk`, `locust` y `pgbench`
¿Para quién es?
- •Backend Python devs (intermedio-senior) con apps FastAPI en producción con primeros síntomas de performance (queries lentos, timeouts ocasionales)
- •Ingenieros que completaron la guía PostgreSQL & SQLAlchemy y quieren llevar lo aprendido al siguiente nivel
- •Devs preparándose para entrevistas técnicas senior donde se pregunta EXPLAIN, indexing avanzado y pool sizing
- •Equipos cuyo "silent killer" de latencia es el N+1 y no lo saben aún
- •Cualquier dev backend cansado de adivinar por qué una query es lenta y listo para empezar a medir
Requisitos
- •Guía PostgreSQL & SQLAlchemy completada (o equivalente: B-tree indexes básico, EXPLAIN básico, ACID, SQLAlchemy ORM con relationships)
- •App FastAPI funcional con datos reales (>100k filas en al menos una tabla)
- •PostgreSQL 14+ instalado localmente o en Docker
- •Familiaridad con `psql` y syntax de SQLAlchemy 2.0 (`select()`, `Mapped`, `mapped_column`)
- •Comodidad con async/await en Python
Contenido del curso
1Módulo 1: Performance Mindset & Benchmarking — Guía para el Creador8 lecciones
2Módulo 2: EXPLAIN ANALYZE en Profundidad — Guía para el Creador8 lecciones
3Módulo 3: Indexing Avanzado — Guía para el Creador8 lecciones
4Módulo 4: El Problema N+1 con SQLAlchemy — Guía para el Creador8 lecciones
5Módulo 5: Query Profiling en Producción — Guía para el Creador8 lecciones
6Módulo 6: Connection Pooling Avanzado — Guía para el Creador8 lecciones
7Módulo 7: Statistics, Autovacuum & Planner — Guía para el Creador8 lecciones
8Módulo 8: Anti-Patterns y Proyecto Final — Guía para el Creador8 lecciones
Reseñas
Lo que dicen los estudiantes
Inicia sesión para dejar una reseña.
Aún no hay reseñas aprobadas.
¡Sé el primero en compartir tu experiencia!