Dataform: La Capa de Staging (Limpieza)
Autor: Eduardo Martínez Agrelo
En el mundo de la ingeniería de datos, existe una regla de oro: NUNCA leemos directamente de la tabla cruda (raw) en los reportes finales o tableros de BI. Los datos en origen suelen ser "sucios": nombres de columnas difíciles, formatos de fecha inconsistentes o valores nulos no tratados. En este laboratorio, crearemos nuestra capa de Staging para sanear esta información.
La magia de la función ${ref()}
Dataform transforma radicalmente la forma en que escribes SQL. En lugar de referenciar tablas mediante rutas completas y frágiles como FROM proyecto.dataset.tabla, utilizamos la función ${ref('nombre_tabla')}.
Esta función hace dos cosas fundamentales:
- Crea dependencias automáticas: Dataform comprende que para construir la tabla B, la tabla A debe existir primero. Esto construye nuestro Grafo Acíclico Dirigido (DAG).
- Abstracción del entorno: Si en el futuro cambias el nombre de un dataset o mueves el proyecto, no necesitas actualizar cientos de scripts. Solo actualizas la configuración, y Dataform se encarga del resto.
Estrategia: ¿Vistas o Tablas?
En nuestra capa de Staging, la recomendación técnica es utilizar type: 'view'. Las vistas ofrecen ventajas claras en esta fase de limpieza:
- Gratuitas de almacenar: Son objetos virtuales, no consumen almacenamiento extra en BigQuery.
- Datos en tiempo real: Al no persistir datos, siempre reflejan el estado actual de la tabla fuente (raw).
- Limpieza ágil: Son ideales para tareas de renombramiento, castear tipos de datos y estandarizar formatos (como pasar todo a minúsculas o corregir zonas horarias).
Implementación: Construyendo el Staging
En este ejercicio, crearemos nuestros archivos .sqlx dedicados a la limpieza. Veremos cómo tomar nuestras tablas declaradas en el Lab 1 y transformarlas en modelos limpios y listos para el consumo.
Recuerda: El objetivo de este laboratorio es que tus modelos downstream (los que vendrán después) encuentren siempre un esquema predecible y profesional.
Conclusión: Ingeniería de Datos profesional
Al finalizar este laboratorio, habrás pasado de simplemente "leer datos" a construir una arquitectura de datos organizada. La capa de Staging es el filtro de calidad que protege a tu empresa de tomar decisiones basadas en datos mal procesados. Ya tienes la base para empezar a escalar con modelos más complejos.