GuíaAvanzado

Guía de Migraciones y CI/CD de Base de Datos

Aprende a cambiar el esquema y los datos de una base de datos en producción sin romperla: la migración como un cambio versionado, ordenado, repetible y reversible. Cubre `ALTER TABLE` y el patrón de reconstrucción de tabla, migraciones de datos con backfills, el patrón expand/contract para cero downtime, y el CI/CD de la base de datos —aplicar migraciones, correr chequeos de calidad y tests en un pipeline, con quality gates y rollback. Evolucionas la base de datos de Reservo con una serie real de migraciones y sales sabiendo construir y operar un sistema de migraciones de producción.

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

Resultados

Lo que vas a poder hacer

  • Entender por qué existen las migraciones: el schema drift entre entornos, y por qué un ALTER a mano no es versionado ni reversible ni auditable
  • Diseñar la anatomía de una migración: up y down, el archivo versionado, la tabla `schema_migrations` y un runner idempotente que aplica solo lo pendiente
  • Escribir migraciones de esquema con ALTER TABLE: agregar columnas, tablas e índices, y el patrón de reconstrucción de tabla que exigen las limitaciones de sqlite
  • Migrar datos existentes con backfills idempotentes y por lotes, y decidir cuándo separar una migración de esquema de una de datos
  • Aplicar el patrón expand/contract para migraciones sin downtime, probar sobre una copia antes de producción y mitigar lo irreversible
  • Correr migraciones en CI: aplicarlas desde cero y de forma incremental, y detectar drift de esquema antes de mergear
  • Construir el pipeline de CI/CD de la base de datos: quality gates, rollback ante fallo y configuración por entorno (dev, staging, prod)
  • Entregar el sistema de migraciones completo de Reservo: migraciones ordenadas, un runner en Python y un pipeline de CI en YAML

Antes de empezar

Qué necesitas traer

Es para ti si...

  • Backend devs que cambian el esquema de una base de datos viva y necesitan hacerlo sin romper producción
  • Equipos que sufren schema drift entre entornos por ALTERs manuales sin versionar
  • Quien va a configurar o mantener un pipeline de CI/CD que incluya la base de datos
  • Devs que quieren entender qué hacen por debajo herramientas como Alembic, Flyway o Liquibase

Requisitos y materiales

  • SQL básico: CREATE TABLE, ALTER TABLE, INSERT
  • Python 3 instalado (el módulo `sqlite3` viene en la librería estándar)
  • Nociones generales de qué es un pipeline de CI/CD; no se requiere experiencia previa configurando uno

Contenido

El temario, módulo por módulo

Abre cualquiera para ver sus lecciones.

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!