Saltar al contenido

Delta

Menú

Puedes leer sin crear un espacio. Créalo solo cuando quieras guardar.

Guardar progreso

Lección 3 de 5

Schema enforcement y evolution

DDL define objetos y DML modifica filas; MERGE expresa upsert con condiciones claras.

17 min aprox.

Detalles

Delta Lake: ACID, esquema, historial y DML

Usa el transaction log para construir tablas fiables, auditables e idempotentes.

Reto observable

Implementa una escritura Delta idempotente y demuestra con historial, claves y un segundo run que el reintento conserva el mismo estado lógico.

Al terminar podrás
  • Explicar snapshots y concurrencia optimista
  • Aplicar MERGE, UPDATE y DELETE correctamente
  • Diferenciar tipos de tabla, conversión, schema evolution y time travel
Prerrequisitos
m05
Última revisión
25 ago 2026
Nivel
Associate + Professional
Ruta relacionada
core
Dominios blueprint
Delta Lake · Data management
Estado
Revisión editorial interna
Fuentes principales
Delta Lake · Convertir a managed con SET MANAGED
Reportar un error
03
Operación

Schema enforcement y evolution

DDL define objetos y DML modifica filas; MERGE expresa upsert con condiciones claras.

CREATE OR REPLACE redefine una tabla de forma atómica; INSERT añade, UPDATE cambia y DELETE elimina filas. MERGE combina coincidencias y no coincidencias desde una fuente.

La fuente de MERGE debe tener como máximo una fila relevante por clave o definir previamente cuál gana. Añade una condición de secuencia para impedir que un evento antiguo sobrescriba uno reciente.

SQLUpsert con secuencia
MERGE INTO main.silver.customers t
USING updates s ON t.customer_id = s.customer_id
WHEN MATCHED AND s.updated_at >= t.updated_at THEN UPDATE SET *
WHEN NOT MATCHED THEN INSERT *;

Deduplica updates por customer_id antes del MERGE.

¿Por qué condicionar updated_at?

Profundiza

DDL define estructura y objetos; DML expresa cambios sobre filas. En Delta, CREATE, ALTER o REPLACE modifican metadatos y versiones; INSERT, UPDATE, DELETE y MERGE producen nuevos commits. MERGE no significa simplemente sincronizar: compara una fuente con un destino mediante una condición y aplica cláusulas a filas coincidentes o no coincidentes. Para ser determinista, la fuente debe producir como máximo una versión ganadora por clave y las reglas deben decidir cómo tratar eventos tardíos. UPDATE SET * no corrige una fuente ambigua. Antes de escribir se define clave, secuencia, semántica de borrado y comportamiento de reintento.

DDL

Lenguaje de definición que crea o modifica objetos, esquema y propiedades.

Distingue cambios estructurales de modificaciones de filas.
MERGE

Operación Delta que aplica cláusulas condicionadas según coincidencia entre una fuente y un destino.

Implementa upsert y CDC cuando clave y orden están bien definidos.
Secuencia

Valor monotónico de negocio o fuente que ordena versiones de una misma entidad.

Impide que eventos tardíos reviertan un estado más reciente.
Resumen

Puntos clave

  • CREATE OR REPLACE sustituye el objeto
  • MERGE necesita fuente determinista
  • La secuencia protege de eventos antiguos

Evita

  • Múltiples filas fuente para una clave
  • UPDATE sin condición temporal en CDC

Vista de lectura · sin ejecución

01_quickstart.ipynb

Delta Lake examples · commit 82ed214

notebooks/pyspark/01_quickstart.ipynb

Módulo 06

Contenido del módulo