Pipeline con arquitectura Medallion (Bronze → Silver → Gold) sobre Databricks Free Edition, desplegado como Infrastructure as Code con Terraform y automatizado vía GitHub Actions. Corriendo en producción y forkeado por otros devs.
Bronze (CTAS) → Silver (MERGE + validación) → Gold (MERGE) → Validación de conteos. Cuatro tasks encadenadas en un solo Job de Databricks, con retries y notificación por email en caso de falla.
silver + rejected == bronze) — falla de forma visible en vez de perder registros en silencio.samples.nyctaxi.trips no trae uno propio), y con errores visibles en vez de silenciosos.silver + rejected == bronze.| Pregunta típica de entrevista | Dónde está la respuesta |
|---|---|
| ¿Cómo parametrizás? | job.tf → parameter {}, recibido como widgets en cada notebook |
| ¿Cómo garantizás idempotencia? | Bronze = CTAS, Silver/Gold = MERGE por clave (trip_id sintético + process_date) |
| ¿Cómo controlás errores? | try/except + raise en cada notebook, max_retries en el Job |
| ¿Cómo encontrás fallos? | email_notifications on_failure, logs por task en Workflows |
| ¿Cómo testeás? | tests/ con pytest + task de validación de conteos en el propio pipeline |
| ¿Cómo manejás secrets? | GitHub Secrets → env vars → nunca en el .tf ni en el repo |