Objetivo
Entender models, source y ref sin memorizar comandos.
Explicación
Un model de dbt suele ser un SELECT versionado. source() referencia entradas; ref() expresa dependencias entre modelos y permite construir el DAG.
Ejemplo real
select *
from {{ source('raw', 'orders') }}
Archivos o datos de entrada
- Abre el proyecto dbt incluido.
Práctica guiada
Encuentra stg_orders.sql y señala qué parte representa origen y qué parte transformación.
Reto sin ayuda
Crea mentalmente un nuevo modelo mart que dependa de stg_orders usando ref().
Resultado esperado
El modelo usa {{ ref(‘stg_orders’) }} en lugar de escribir la tabla física.
Cómo verificarlo
Si cambias el nombre físico, ref mantiene la dependencia lógica.
Pista específica
Busca models/staging antes de models/marts.
Solución paso a paso
Un mart debe depender de staging mediante ref().
Errores frecuentes
- Escribir nombres físicos por todas partes rompe lineage y entornos.
Qué debes recordar
dbt convierte transformaciones SQL en un proyecto versionado y testeable.
Siguiente paso
Continúa con el siguiente bloque de la ruta rápida.
Preparando contenido…
Quiz de la lección
¿Qué función expresa una dependencia entre modelos dbt?