Projeto de engenharia de dados ponta a ponta para análise do ecossistema de e-commerce brasileiro utilizando o dataset da Olist. O pipeline implementa a Arquitetura Medalhão (Bronze, Silver, Gold) para processar os dados brutos, modela um Data Warehouse em Star Schema e culmina em dashboards analíticos para visualização de KPIs de vendas.
Este projeto foi desenvolvido para a disciplina de Sistemas de Banco de Dados 2 (2025/2).
- Linguagem: Python
- Processamento de Dados: PySpark
- Análise e Visualização: Pandas, Matplotlib, Seaborn
- Banco de Dados: PostgreSQL
- Infraestrutura como Código: Docker e Docker Compose
- Visualização Final: Power BI
O projeto é organizado em duas pastas principais, seguindo a separação de responsabilidades:
DataLayer— Armazena os dados e sua documentação associada em cada camada da Arquitetura Medalhão.Transformer— Contém a lógica de processamento (pipelines de ETL) que move e transforma os dados entre as camadas.
├── DataLayer
│ ├── raw # CAMADA BRONZE (Dados brutos)
│ │
│ ├── silver # CAMADA SILVER (Dados limpos e unificados)
│ │
│ └── gold # CAMADA GOLD (Data Warehouse)
│
├── Transformer
└── ETL
├── etl_raw_to_silver.ipynb
└── etl_silver_to_gold.ipynb
Siga os passos abaixo para configurar o ambiente e executar o pipeline completo da Camada Bronze até a Gold.
-
Clonar o Repositório
git clone https://github.com/DiegoCarlito/Olist-data-engineering.git cd Olist-data-engineering -
Criar e Ativar Ambiente Virtual
python -m venv venv source venv/bin/activate # Linux/Mac # .\venv\Scripts\activate # Windows
-
Instalar Dependências
pip install -r requirements.txt
-
Configurar o Arquivo
.envcp .env.example .env
Edite o arquivo
.envcom suas informações. -
Subir Container PostgreSQL
docker-compose up -d
-
Pipeline Bronze → Silver Execute o notebook:
Transformer/ETL/etl_raw_to_silver.ipynb -
Pipeline Silver → Gold Execute o notebook:
Transformer/ETL/etl_silver_to_gold.ipynb