Skip to content

Proyecto de ELT (Extract, Load, Transform) que utiliza dbt, Snowflake y Airflow. Se usó el TPC-H dataset proporcionado por Snowflake (Sample Data)

Notifications You must be signed in to change notification settings

rodrigosvv/db-snowflake-elt-pipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ELT - Sample Data: TPC-H

El objetivo del proyecto es demostrar cómo construir una canalización ELT (Extract, Load, Transform) de forma práctica. Para ello se utilizaron herramientas como DBT (Data Build Tool) para la transformación, Snowflake para el almacenamiento de datos y Airflow para la orquestación. El proyecto pretende cubrir técnicas básicas de modelado de datos, como la creación de fact tables y data marts.

Schema del Dataset

sample-data-tpch-schema

Fuente: docs.snowflake.com/en/user-guide/sample-data-tpch

Tech Stack

  • Python
  • Apache Airflow
  • Docker
  • dbt
  • Snowflake
  • YAML
  • Static Badge

Setup de Snowflake

Worksheet

snowflake setup

Configurar dbt_project.yml y packages

dbt_project.yml

models_configuration

Packages

packages

Creación de fólders staging y marts dentro de carpeta models (Good Practice)

folders

Creación de source y staging tables

Source

sourcers

Staging Tables

stg_orders stg_lineitems

Modelos transformados: Fact tables y Data marts

Fact Table

facttable

Data marts

int_order_items mart_order_items

Creación de Macros

Macro

Generic y Singular Tests

Generic Test

generic_Test

Singular Tests

singulartest_1

singultartest_2

Deploy usando Airflow y Astronomer Cosmos

Modificar Docker file y Requirements file

Docker File

Docker environment

Requirements File

requerimientos

Creación del DAG: dbt_dag.py

dag_id

Creación de Conexión a Snowflake desde Airflow UI

Snowflake_conn

¡Data Pipeline en acción!

Pipeline success

About

Proyecto de ELT (Extract, Load, Transform) que utiliza dbt, Snowflake y Airflow. Se usó el TPC-H dataset proporcionado por Snowflake (Sample Data)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published