Saltar al contenido

Proyecto streaming

Menú

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

Guardar progreso

Lección 3 de 5

Estado, CDC y calidad

Un plan de recuperación distingue reinicio, replay y rebuild, y nunca borra estado antes de capturar evidencia y delimitar el rango afectado.

30 min aprox.

Detalles

Proyecto de streaming con SLA

Entrega un flujo operable que soporte datos tardíos, recuperación e incidentes reproducibles.

Reto observable

Opera un pipeline streaming contra un SLO y ejecuta un game day que demuestre recuperación dentro de RTO/RPO sin pérdida ni duplicados.

Al terminar podrás
  • Cumplir SLA de frescura y completitud
  • Recuperar sin duplicados
  • Crear métricas y runbook
Prerrequisitos
m16
Última revisión
25 ago 2026
Nivel
Professional
Ruta relacionada
streaming
Dominios blueprint
Streaming production readiness
Estado
Revisión editorial interna
Fuentes principales
Production considerations for Structured Streaming · Databricks · Monitor Structured Streaming queries · Databricks
Reportar un error
03
Operación

Estado, CDC y calidad

Un plan de recuperación distingue reinicio, replay y rebuild, y nunca borra estado antes de capturar evidencia y delimitar el rango afectado.

Un fallo transitorio del executor suele resolverse reanudando desde el mismo checkpoint. Un cambio incompatible de estado requiere checkpoint nuevo y reconstrucción desde bronze. Un error lógico publicado exige identificar versiones o tiempos afectados, corregir código y escribir de forma idempotente en un destino aislado antes del cutover.

La retención de Kafka, CDF, archivos y Delta debe cubrir el RTO y el máximo tiempo de detección. Si el origen ya eliminó datos, restaurar compute no recupera completitud. Los runbooks incluyen criterios para pausar productores o consumidores, rutas alternativas y validación posterior.

SQLDelimitación de una ventana de reparación
SELECT
  min(event_ts) AS first_affected,
  max(event_ts) AS last_affected,
  count(*) AS affected_rows,
  count(DISTINCT event_id) AS affected_events
FROM main.silver.web_events
WHERE pipeline_version = '2026.07.20-bad'
  AND event_date BETWEEN DATE '2026-07-20' AND DATE '2026-07-21';

Repara primero en una tabla sombra y compara claves/conteos antes de reemplazar o hacer `MERGE` en producción.

¿Cuándo es apropiado conservar el checkpoint durante la recuperación?

Profundiza

Recuperar no siempre significa reiniciar. Un reinicio restaura el mismo plan desde un checkpoint compatible tras un fallo transitorio. Un replay vuelve a procesar un intervalo conservando una fuente durable, normalmente hacia staging o una versión nueva. Un rebuild reconstruye estado y destino completos cuando cambió la semántica o se perdió compatibilidad. Elegir mal puede ocultar pérdida o duplicar efectos. Antes de actuar se inmoviliza evidencia: error, batch, offsets, versiones Delta, estado de sinks y métricas. Borrar checkpoint convierte recuperación en consulta nueva y elimina la frontera que permitía razonar. El runbook debe indicar condiciones de entrada, autoridad, RPO/RTO, validaciones y rollback. Un replay no se publica directamente sobre producción sin reconciliar claves, secuencias, conteos e invariantes; además debe evitar efectos externos hasta aprobar el resultado.

Reinicio

Continuación del mismo plan lógico desde el último checkpoint compatible después de un fallo operativo.

Es la opción de menor impacto cuando código, estado y datos siguen siendo válidos.
Replay

Reprocesamiento deliberado de un intervalo histórico desde una fuente durable con límites explícitos.

Corrige resultados sin destruir el progreso de la consulta activa y ofrece comparación antes de publicar.
Rebuild

Reconstrucción completa o sustancial del estado y salida con un checkpoint nuevo.

Es necesaria ante cambios incompatibles o corrupción, pero exige planificación de corte, coste y reconciliación.
Resumen

Puntos clave

  • Reinicio conserva checkpoint; replay usa un rango y estado aislados; rebuild reconstruye una tabla completa.
  • Captura `lastProgress`, offsets, versión de código y error antes de mutar estado.
  • La retención de origen es un requisito de recuperación, no solo una decisión de coste.

Evita

  • Borrar checkpoint como primer paso y perder el punto exacto del incidente.
  • Reprocesar todo el histórico en el mismo destino sin aislar escrituras ni evitar duplicados.

Fuente revisada · vista externa

Databricks Free Declarative Pipelines

Databricks Free Declarative Pipelines · commit a515370

docs/3-2-building-bronze-sql.md

Lectura en GitHub

Este notebook se abre desde su fuente revisada

El repositorio no permite republicar su contenido dentro de Lakehouse Lab. Conservamos la misma experiencia lateral, la ruta exacta y el commit auditado, y dejamos la lectura en GitHub para respetar la autoría.

Autor
andkret
Licencia
No verificada
Formato
project
Ver notebook en GitHub ↗

Módulo 17

Contenido del módulo