Skills que aprenderás
Convocatorias
No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.
Recursos
No hay recursos disponibles todavía para esta convocatoria
Dirigido a profesionales con experiencia sólida en PostgreSQL que necesitan dar el salto hacia la operación y el diseño de sistemas de bases de datos en entornos de producción exigentes, este curso aborda las palancas de rendimiento y fiabilidad que marcan la diferencia entre una instancia que simplemente funciona y una que escala con garantías. A lo largo de ocho horas los participantes aprenderán a leer e interpretar planes de ejecución para detectar cuellos de botella reales, a seleccionar y combinar estrategias de indexación avanzadas, a diseñar esquemas particionados que aprovechen el pruning automático del planificador, a afinar los parámetros críticos del servidor según el perfil de carga, a automatizar el mantenimiento preventivo del almacenamiento, a construir dashboards operativos a partir de las vistas internas del sistema y a anticipar y resolver situaciones de contención y deadlock en cargas de alta concurrencia; el resultado concreto es que cada participante saldrá capaz de diagnosticar, justificar y aplicar mejoras medibles en una instancia PostgreSQL real.
EXPLAIN ANALYZE para identificar y documentar al menos dos cuellos de botella con su propuesta de mejora justificada.postgresql.conf en función de las características de memoria del sistema y el perfil de carga, justificando cada valor elegido.synchronous_commit en la latencia y el riesgo de pérdida de datos en cada modo de failover.Bloque 1 — Diagnóstico y optimización de consultas. El punto de partida es aprender a leer lo que el planificador realmente hace: anatomía de la salida de EXPLAIN ANALYZE, interpretación de nodos de ejecución (Seq Scan, Index Scan, Hash Join, Nested Loop), identificación de estimaciones erróneas de cardinalidad y su impacto en el plan elegido, y técnicas de reescritura de consultas para guiar al optimizador hacia planes más eficientes.
Bloque 2 — Estrategias de indexación avanzada. Se examinan en profundidad los tipos de índice disponibles —B-Tree, BRIN, GIN, GiST, índices parciales e índices sobre expresiones— analizando para cada uno los patrones de acceso que favorece, el coste de mantenimiento en escritura, el espacio consumido y los casos de uso industriales donde cada opción es la elección correcta.
Bloque 3 — Particionado declarativo y pruning. Diseño e implementación de tablas particionadas por rango, lista y hash; estrategias de routing automático de filas; gestión del ciclo de vida de particiones; y verificación mediante el plan de ejecución de que el pruning elimina efectivamente los escaneos sobre particiones irrelevantes en las consultas críticas.
Bloque 4 — Ajuste de la configuración del servidor. Análisis del impacto de los parámetros de memoria (shared_buffers, work_mem, effective_cache_size), de WAL (wal_buffers, checkpoint_completion_target, max_wal_size) y del planificador en distintos perfiles de carga OLTP y OLAP, con metodología para medir el efecto de cada cambio antes de llevarlo a producción.
Bloque 5 — Mantenimiento automático y gestión del bloat. Funcionamiento interno del autovacuum, causas y consecuencias del table bloat y los dead tuples, consulta de pg_stat_user_tables para cuantificar la acumulación, y construcción de scripts PL/pgSQL o shell que ejecuten VACUUM/ANALYZE selectivo con umbrales configurables y registren el resultado.
Bloque 6 — Alta disponibilidad con Streaming Replication. Arquitectura de la replicación física en PostgreSQL, configuración del primary y los standby, modos de synchronous_commit y su efecto en la durabilidad y la latencia, monitorización con pg_stat_replication, y diseño de los procedimientos de failover y switchover anticipando cada escenario de pérdida de datos.
Bloque 7 — Observabilidad y gestión de la concurrencia. Construcción de un dashboard operativo a partir de pg_stat_activity, pg_locks, pg_stat_replication y pg_stat_bgwriter; definición de umbrales de alerta temprana para métricas clave; diagnóstico de deadlocks y situaciones de lock contention en cargas de alta escritura simultánea; y propuestas de rediseño transaccional o de esquema para eliminar o mitigar los conflictos identificados.
psql y, opcionalmente, a una herramienta gráfica como pgAdmin 4 o DBeaver.pg_dump.psql.