D A T A M A N A G E M E N T

Cargando...

Crear las referencias al modelo BRONZE 

Introducción

En la arquitectura de capas de un proyecto de BI con DBT, los modelos se suelen organizar en Bronze, Silver y Gold:

  • Bronze: datos raw o crudos directamente de la fuente, sin apenas transformación.
  • Silver: datos parcialmente transformados y normalizados, listos para análisis más complejos.
  • Gold: datos finales, listos para consumo por dashboards y reporting.

Para construir un modelo Silver, necesitamos referenciar los modelos Bronze previamente cargados en la base de datos.

Creación de referencias

  • Ejecutar los siguientes comandos
    • cd formacion_db_postgres 
    • $env:DBT_PROFILES_DIR = (Get-Location)
    • dbt run-operation generate_source –args ‘{«schema_name»: «BRONZE»}’
  • Crear dentro de la carpeta BRONZE, el fichero bronze_model.yml y copiar el texto generado por el comando anterior dentro del fichero.
  • El esquema DBT_FORMACION será utilizado por DBT como destino para la creación de todas las tablas, funcionando como nuestro Data Warehouse.
  • Para cada tabla, es posible autogenerar el fichero .sql que referencia la tabla de origen.
  • Es imprescindible configurar el atributo schema: BRONZE para indicar a DBT el esquema de PostgreSQL sobre el que debe operar.
  • Ejemplo de consultar los datos de la tabla base_bronze_media_type.sql
  • Ejecutar dbt run 
  • Ahora se crearán vistas en Postgres.
  • Esto se crea porque cada fichero .sql qué tengamos en el proyecto DBT, al ejecutar dbt run se crea todo en el esquema de postgres 

Importante

  • Evitar el uso de * en los SELECT. Siempre que se conozcan las columnas a consultar, deben especificarse explícitamente en el SELECT, lo que reduce significativamente los costes de procesamiento.
  • Vistas vs. Tablas:
  • Por defecto, DBT crea vistas. No obstante, es posible configurar que algunos modelos se materialicen como tablas, vistas, vistas materializadas o efímeras, según las necesidades del proyecto o del modelo específico.

Referencia: https://docs.getdbt.com/reference/resource-configs/materialized

Leave a Comment

Virgen del pilar nº4, ático H

03330 Crevillente (Alicante)