Pipeline ETL em Batch - NYC Yellow Taxi
🚕 Projeto de Engenharia de Dados com pipeline ETL em lote para dados de corridas de táxi de NYC, persistência em Parquet e dashboard interativo com Streamlit.
Links Importantes do Tutorial
| Recurso | Link |
|---|---|
| Vídeo no YouTube | Assistir Tutorial Completo |
| Documentação Completa | Notion |
| Repositório GitHub | YT-batch-ETL-NYC--Yellow-Taxi-Data-Engineer-First-Project |
| Padrão de Commits | Guia Completo com Emojis |
| @vbluuiza | |
| vbluuiza |
Índice
- Sobre o Projeto
- Arquitetura do Pipeline
- Dashboard
- Stack Tecnológica
- Estrutura do Projeto
- Pré-requisitos
- Instalação e Configuração
- Como Executar
- Contato
Sobre o Projeto
Este repositório mostra um fluxo ETL completo em batch usando dados reais de Yellow Taxi de NYC.
O pipeline cobre as etapas de:
- Extração dos dados CSV
- Validação e tratamento de qualidade de dados
- Transformação e criação de métricas
- Agregações para análise
- Persistência em formato Parquet
- Visualização no Streamlit
Objetivo: servir como projeto-base para quem quer estudar e reproduzir um processo de Engenharia de Dados ponta a ponta.
Arquitetura do Pipeline

Dashboard
Visão Geral

Análise por Fornecedor

Análise por Pagamento

Análise por Dia da Semana

Stack Tecnológica
| Camada | Tecnologia | Versão | Por que usamos |
|---|---|---|---|
| Core | Python | 3.14+ | Linguagem principal para construir o ETL e o dashboard. |
| Core | Streamlit | 1.44+ | Cria o dashboard interativo rapidamente, sem precisar de front-end. |
| Biblioteca Python | pandas | 2.2+ | Faz limpeza, transformação, agregações e análise tabular dos dados. |
| Biblioteca Python | pyarrow | 19.0+ | Leitura e escrita de Parquet com boa performance em formato colunar. |
| Biblioteca Python | ipykernel | 7.2+ | Conecta o ambiente Python ao Jupyter Notebook. |
| Ferramenta | Jupyter Notebook | - | Desenvolvimento e validação passo a passo do pipeline ETL. |
| Ferramenta | UV | - | Gerencia dependências e execução do projeto de forma rápida e reprodutível. |
Estrutura do Projeto
├── data/
│ ├── yellow_tripdata_2016-03.csv
│ └── output/
│ └── yellow_taxi_2016-03.parquet
├── notebooks/
│ └── main.ipynb
├── dashboard.py
├── DATASET.md
├── pyproject.toml
└── uv.lock
Observação: a pasta
data/não foi subida para o GitHub neste repositório. Para reproduzir o projeto, gere os arquivos localmente executando o notebook emnotebooks/main.ipynb.
Pré-requisitos
- Python 3.14 ou superior
- UV instalado
Instalação do UV (caso precise):
pip install uv
Instalação e Configuração
1) Clone o repositório
git clone https://github.com/vbluuiza/YT-batch-ETL-NYC--Yellow-Taxi-Data-Engineer-First-Project.git
cd YT-batch-ETL-NYC--Yellow-Taxi-Data-Engineer-First-Project
2) Sincronize dependências
uv sync
Como Executar
Opção A: executar pipeline no notebook
uv run jupyter notebook
Depois abra notebooks/main.ipynb e execute as células para gerar o parquet em data/output/yellow_taxi_2016-03.parquet.
Opção B: executar dashboard Streamlit
uv run streamlit run dashboard.py
O dashboard será aberto no navegador local.
Contato
vbluuiza | [email protected]
Se este projeto te ajudou:
- Dê uma star no repositório ⭐
- Inscreva-se no canal @vbluuiza 🩷
- Deixe seu like no vídeo 👍
- Comente com dúvidas e sugestões 💬
Feito com ❤️ por @vbluuiza