dbt: Sources y Capa de Staging (Limpieza Inicial)
Autor: Eduardo Martínez Agrelo
Bienvenidos al núcleo de la transformación de datos moderna. dbt (Data Build Tool) no mueve los datos, sino que orquesta el SQL dentro de nuestro Data Warehouse. En este primer laboratorio, aprenderemos a conectar dbt con BigQuery y a establecer las bases de una arquitectura robusta.
¿Qué son las Sources?
En dbt, nunca llamamos a las tablas crudas directamente por su nombre de base de datos. Utilizamos Sources:
- Abstracción: Definimos el origen de los datos en un archivo YAML para centralizar el linaje.
- Frescura: Permiten monitorizar cuándo fue la última vez que entraron datos a nuestras tablas de ingesta.
La Capa de Staging
La regla de oro de dbt es: un modelo de staging por cada tabla fuente. Aquí realizamos las transformaciones atómicas:
SELECT cast(id as string) as customer_id FROM {{ source('raw', 'users') }}
En esta etapa renombramos columnas para que tengan sentido de negocio, corregimos tipos de datos y eliminamos registros irrelevantes, creando una interfaz limpia para el resto del proyecto.
Modularidad y Ref
La potencia de dbt reside en la función ref(). Al usarla, dbt construye automáticamente el grafo de
dependencias (DAG). Esto asegura que las tablas se creen en el orden correcto y permite que dbt entienda cómo
fluye la información desde el origen hasta el reporte final.
Conclusión: El fin de los scripts SQL aislados
Has configurado tu primer proyecto y tu capa de limpieza. Ya no tienes archivos SQL perdidos; tienes un sistema interconectado. El siguiente paso es subir el nivel y crear modelos de negocio complejos en la capa de Marts.