Este projeto tem como objetivo implementar, na prática, um pipeline completo de Engenharia de Dados, seguindo uma arquitetura moderna utilizada no mercado, desde a ingestão dos dados até a disponibilização para consumo analítico.
O foco principal é engenharia de dados, com extensões planejadas para análise de dados e ciência de dados, permitindo uma visão clara de todo o ciclo de vida dos dados e das responsabilidades de cada etapa.
- Construir um pipeline de dados end-to-end
- Aplicar boas práticas de Engenharia de Dados
- Separar claramente as camadas de dados:
- ingestão
- armazenamento
- transformação
- consumo
- Criar um projeto reprodutível, organizado e adequado para portfólio
Fluxo de dados implementado no projeto:
1°- (API + Dados Simulados) (Fontes de Dados) 2°- Ingestão (Python) 3°- Data Lake (MinIO / S3-like) 4°- Staging (Postgres - JSONB) 5°- Camada Silver (dbt) 6°- Camada Gold (planejada) 7°- BI / Análise / Ciência de Dados (planejado)
- API externa: dados de produtos (Fake Store API)
- Dados simulados:
- clientes
- pedidos
Essa combinação simula um cenário realista, integrando:
- dados internos (sistemas transacionais)
- dados externos (APIs de terceiros)
- Armazenamento de dados brutos
- Versionamento por data (
dt=YYYY-MM-DD) - Implementado com MinIO, simulando um ambiente S3 (AWS)
- Banco relacional PostgreSQL
- Dados armazenados em formato JSONB
- Camada intermediária para flexibilidade, auditoria e reprocessamento
- Transformações realizadas com dbt
- Tipagem e normalização dos dados
- Dados limpos e estruturados, prontos para modelagem analítica
- Modelo dimensional (Star Schema)
- Tabelas fato e dimensões
- Dados prontos para consumo por BI e análises
- Python – ingestão e integração de dados
- Docker & Docker Compose – infraestrutura local
- PostgreSQL – staging e camadas analíticas
- MinIO – Data Lake (S3 local)
- dbt – transformações e modelagem analítica
- WSL (Linux) – ambiente de desenvolvimento
- Configuração da infraestrutura com Docker
- Implementação do Data Lake (MinIO)
- Pipeline de ingestão em Python
- Staging no Postgres com JSONB
- Configuração do dbt
- Criar camada Silver
- Criar camada Gold (Star Schema)
- Implementar testes de qualidade de dados (dbt tests)
- Orquestrar o pipeline (Airflow ou Prefect)
- Criar dashboards de BI
- Realizar análise exploratória dos dados
- Extensão para Ciência de Dados (opcional)