Puedes leer todo sin registrarte. Solo crearemos un perfil anónimo cuando decidas guardar tu progreso.
Lección 2 de 5
Diseño de eventos y particiones
La arquitectura separa entrada auditable, transformación stateful, publicación idempotente y observabilidad para que cada frontera pueda recuperarse.
- Duración
- 30 min aprox.
- Objetivo
- La arquitectura separa entrada auditable, transformación stateful, publicación idempotente y observabilidad para que cada frontera pueda recuperarse.
- Siguiente paso
- Continuar con la siguiente lección
Ver detalles del módulo
Proyecto de streaming con SLA
Entrega un flujo operable que soporte datos tardíos, recuperación e incidentes reproducibles.
- Cumplir SLA de frescura y completitud
- Recuperar sin duplicados
- Crear métricas y runbook
02ImplementaciónDiseño de eventos y particiones
La arquitectura separa entrada auditable, transformación stateful, publicación idempotente y observabilidad para que cada frontera pueda recuperarse.
+
Diseño de eventos y particiones
La arquitectura separa entrada auditable, transformación stateful, publicación idempotente y observabilidad para que cada frontera pueda recuperarse.
Bronze conserva el evento original y coordenadas de origen. Silver valida esquema, deduplica y aplica reglas temporales. Gold sirve agregados con la latencia acordada. Cada consulta tiene un checkpoint exclusivo y cada tabla una clave o contrato que permite recomponerla desde una capa anterior.
La capacidad se diseña para la tasa sostenida más un margen de recuperación. Si tras una hora de caída llegan diez millones de eventos, el pipeline debe procesar más rápido que la tasa normal para volver al SLA. Separar ingestión de agregación evita que un operador stateful pesado bloquee la captura de entrada.
Modelo mental
Una arquitectura streaming recuperable separa fronteras de responsabilidad. La entrada bronze conserva el sobre original y una identidad reproducible; las transformaciones stateful usan checkpoints propios; la salida canónica se confirma idempotentemente; observabilidad registra tanto progreso técnico como verdad de negocio. Acoplar todas las etapas en una única consulta parece reducir latencia, pero amplía el dominio de fallo y hace que una API lenta bloquee ingestión. Separarlas con tablas Delta añade un commit y algo de latencia, a cambio de replay, aislamiento y evolución independiente. Cada consumidor tiene su checkpoint, por lo que reparar uno no rebobina los demás. El modelo medallion no es solo organización de calidad: sus commits son fronteras de recuperación. Los schemas, claves, secuencias y expectativas forman contratos versionados, y los efectos externos se derivan después de que exista una fuente canónica auditable.
Commit durable desde el que una etapa downstream puede reanudar o reconstruirse sin releer el sistema original.
Reduce radio de impacto y hace posible reparar una transformación sin afectar ingestión.Representación gobernada que constituye la verdad publicada para una etapa o dominio.
Desacopla efectos externos y consumidores de reintentos y formatos del transporte.Conjunto de etapas, datos y consumidores afectados cuando falla o cambia un componente.
Guía la decisión de separar consultas y checkpoints aunque aumente ligeramente la latencia.pipeline: clickstream
sources:
- main.bronze.web_events
targets:
silver: main.silver.web_events
gold: main.gold.sessions_5m
slo:
freshness_p95_seconds: 300
completeness_percent: 99.5
recovery:
rto_minutes: 30
replay_source: main.bronze.web_events
owner: data-platform-oncallEste contrato debe acompañarse de consultas que calculen cada indicador y enlaces al runbook.
Puntos clave
- Bronze inmutable proporciona replay y auditoría.
- Checkpoints independientes reducen el radio de impacto de un cambio o fallo.
- Capacidad de recuperación debe superar la tasa de llegada, no solo sostenerla.
Evita
- Acoplar ingestión, enrichments externos y agregación en una sola consulta sin punto de replay intermedio.
- Dimensionar únicamente para el promedio y no poder reducir backlog después de una interrupción.
Recuerdo activo