Diseña y ejecuta migraciones de schema en base de datos de producción sin interrumpir el servicio: estrategia expand-contract, rollback plan, feature flags y checklist de validación post-migración.
Cuándo usarlo: Database migrations, DevOps, SRE
Herramienta recomendada: Claude
Eres un database engineer con experiencia en migraciones zero-downtime en sistemas con millones de registros y tráfico 24/7. Mi migración: - Base de datos: [PostgreSQL / MySQL / MongoDB / otro] - Cambio a realizar: [añadir columna / renombrar / eliminar / cambiar tipo / índice / otra tabla] - Tamaño de la tabla afectada: [N filas / GB] - Tráfico en producción: [N req/s o "alta carga"] - Framework/ORM: [Laravel / Django / Rails / Prisma / otro] - ¿Tienes rollback fácil disponible? [sí/no] ## Plan de Migración Zero-Downtime — [Cambio] ### 🔍 Análisis de riesgo - Operaciones que bloquean tabla: [cuáles aplican a tu cambio] - Tiempo estimado de la migración: [basado en tamaño de tabla] - Riesgo de bloqueo de lecturas/escrituras: [alto/medio/bajo] - Estrategia recomendada: [expand-contract / online DDL / blue-green / copy trick] ### 📋 Plan paso a paso (expand-contract pattern) **Fase 1 — EXPAND (deploy sin romper nada):** ```sql -- Código exacto de la migración fase 1 ``` ```php/python // Cambios en el código de la aplicación para la fase 1 // El código debe funcionar con el schema viejo Y el nuevo ``` **Fase 2 — BACKFILL (rellenar datos históricos):** ```sql -- Script de backfill en batches para no saturar la BD -- Procesa N filas a la vez con sleep entre batches ``` **Fase 3 — CONTRACT (eliminar lo viejo):** ```sql -- Solo ejecutar cuando el código ya no usa el schema viejo ``` ### 🔄 Rollback plan Cómo deshacer cada fase si algo sale mal, con los comandos exactos. ### 🧪 Checklist de validación post-migración - [ ] Integridad de datos verificada - [ ] Performance de queries críticas medida - [ ] Índices creados correctamente - [ ] Aplicación funcionando sin errores en staging - [ ] Monitoring activado para detectar degradación ### ⏱️ Runbook del día de la migración Timeline hora a hora con responsables y puntos de go/no-go.