Pipeline completo de dados com Star Schema, camadas Raw → Staging → Marts, testes automáticos e dashboard analítico — do zero ao deploy.
CSV seeds + OLTP simulado
PostgreSQL · schema raw
Limpeza · views · testes
Joins · enriquecimento
Star Schema · tables
Streamlit · KPIs
Pipeline end-to-end com separação clara de responsabilidades por camada.
A fact_sales é o centro do modelo, referenciando todas as dimensões via surrogate keys.
SQL limpo, modular e testado — seguindo os princípios de Kimball.
-- fact_sales.sql — Tabela Fato do Star Schema -- Grão: 1 linha por item de pedido não-cancelado with int_orders as ( select * from {{ ref('int_orders_enriched') }} ), dim_customers as ( select customer_sk, customer_id from {{ ref('dim_customers') }} ), dim_date as ( select date_sk, full_date from {{ ref('dim_date') }} ), final as ( select {{ dbt_utils.generate_surrogate_key(['o.order_item_id']) }} as sales_sk, c.customer_sk, p.product_sk, d.date_sk, o.quantity, o.item_total_amount, o.item_gross_margin from int_orders o inner join dim_customers c on o.customer_id = c.customer_id inner join dim_date d on o.order_date = d.full_date ) select * from final
Habilidades avançadas de Engenharia de Dados Analíticos aplicadas em cenário corporativo real.
Star Schema com dimensões conformed, surrogate keys via dbt_utils e grão bem definido na fact_sales.
30+ testes dbt automáticos: not_null, unique, accepted_values, relationships e expression_is_true.
Lineage graph, data dictionary e descrição de cada coluna — tudo gerado automaticamente pelo dbt docs.
Staging/Intermediate como views (sem custo), Marts como tables (performance analítica máxima).
Streamlit com KPIs, Plotly, filtros interativos — lendo direto do schema marts do PostgreSQL.
Docker Compose para subir o banco com um comando. Setup automatizado via bootstrap.sh.
Do zero ao dashboard em menos de 5 minutos.
# 1. Clonar e configurar git clone <repo-url> && cd corporate-data-warehouse-dbt cp .env.example .env # 2. Subir o banco docker-compose up -d postgres # 3. Instalar dependências pip install -r requirements.txt # 4. Pipeline dbt completo cd dbt_project dbt deps && dbt seed && dbt run && dbt test # 5. Documentação interativa dbt docs generate && dbt docs serve # → localhost:8080 # 6. Dashboard cd .. && streamlit run app/streamlit_app.py # → localhost:8501