← 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!