Loading repository data…
Loading repository data…
carolinecunha-coder / repository
🚀 Pipeline de dados Medallion (Raw-Silver-Gold) em Python e PostgreSQL. Trata e higieniza dados públicos de viagens federais (2025), aplicando governança para informações sigilosas e isolamento de outliers de alto valor. Inclui análises automatizadas e geração de gráficos com Seaborn/Matplotlib para tomada de decisão.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Este projeto implementa um pipeline de dados robusto no padrão de arquitetura Medallion (Raw → Silver → Gold) para extrair, transformar e analisar dados públicos sobre despesas e trechos de viagens realizadas a serviço por servidores do Governo Federal.
O principal objetivo é consolidar dados brutos distribuídos em múltiplos arquivos de origem (como passagens, trechos, pagamentos e viagens), tratando inconsistências, valores ausentes, dados zerados ou negativos, e entregando uma Camada Gold centralizada. Essa camada permite responder a perguntas estratégicas de negócio sobre eficiência de custos, meios de transporte e comportamento de despesas públicas, gerando insights visuais automáticos.
O ecossistema técnico do projeto foi desenvolvido com tecnologias líderes de mercado em Engenharia de Dados:
pandas (manipulação e higienização de DataFrames), os e urllib.parseraw, silver e gold)SQLAlchemy para execução de queries nativas em alta performance e mapeamento relacionalMatplotlib e Seaborn para geração automatizada de relatórios gráficos de alta resolução (300 DPI)Na Camada Gold, os dados foram estruturados de duas formas principais para atender requisitos de negócio distintos:
Tabela Física (gold.fato_viagens_trechos)
INNER JOIN.VIEW Relacional (gold.vw_financeiro_pagamentos)
INNER JOIN e GROUP BY.Durante a execução e consolidação da Camada Gold (especificamente na análise da viagem de maior duração), o pipeline se deparou com desafios reais de governança de dados e segurança nacional presentes nas bases do Portal da Transparência.
Viagens realizadas por servidores de agências de inteligência (ABIN), segurança pública (Polícia Federal) ou missões de soberania nacional (Ministério da Defesa) têm seus campos de nome_viajante e destinos protegidos por lei.
O pipeline foi programado para tratar esses textos de forma padronizada (.title().strip()), garantindo que o sigilo legal seja respeitado e exibido de forma polida nos relatórios analíticos:
"Informações Protegidas Por Sigilo"
O banco de dados original continha viagens longas com custo total registrado como 0.0 (erros de preenchimento ou cancelamentos).
O pipeline aplicou regras rígidas na query da Camada Gold:
WHERE valor_total > 0
Assim, foram descartados ruídos e mantidos apenas registros financeiros válidos e auditáveis.
Abaixo estão os principais insights derivados das sete perguntas de negócio respondidas pelo arquivo 3_analise.ipynb.
Identifica quais ministérios e autarquias demandam maior orçamento para deslocamento de pessoal, permitindo auditorias focadas.
Utilizando técnicas de split de texto (SPLIT_PART), foram limpos os históricos de escalas para isolar o destino principal.
Isso revelou localidades com maiores custos médios de diárias fora do eixo administrativo comum de Brasília.
Localizou de forma precisa uma viagem atípica de 378 dias, cujo custo totalizado foi de R$ 120.650,00.
O valor se mostrou proporcional ao período (cerca de R$ 319,00 por dia), demonstrando a capacidade do pipeline de isolar missões contínuas no exterior ou de longo prazo sem distorcer as médias gerais.
Inicialmente visualizado em gráfico de pizza, foi convertido para um gráfico de barras horizontais para evitar a sobreposição de rótulos pequenos (Ferroviário e Marítimo).
O resultado mostrou de forma clara o predomínio dos modais Aéreo e Rodoviário.
Revelou quais modalidades de repasse financeiro concentram os maiores tickets médios por transação via VIEW analítica.
Mapeamento geográfico de trechos que auxilia na negociação de contratos corporativos de passagens para os estados mais visitados.
Demonstra a concentração do desembolso de verbas públicas por entidade financeira de origem.
Siga os passos abaixo para implantar e executar o pipeline completo no seu ambiente local utilizando o VS Code.
Certifique-se de manter a seguinte estrutura de arquivos na raiz do projeto:
.
├── .env
├── requirements.txt
├── 0_criar_banco.sql
├── 1_extrair.py
├── 2_transformar.py
├── 3_analise.ipynb
└── data/
└── viagens_2025_6meses.zip
Crie um arquivo .env na raiz do projeto e preencha com as credenciais do seu banco PostgreSQL.
DB_USER=seu_usuario
DB_PASS=sua_senha_segura
DB_HOST=localhost
DB_PORT=5432
DB_NAME=projeto_final
Abra o terminal do VS Code e execute:
pip install -r requirements.txt
No pgAdmin 4, execute:
0_criar_banco.sql
python 1_extrair.py
python 2_transformar.py
Abra o arquivo:
3_analise.ipynb
No VS Code:
Nota: Ao finalizar a execução do notebook, os sete gráficos analíticos serão gerados automaticamente e salvos como arquivos
.pngde alta qualidade na raiz do projeto.
Para evolução deste ecossistema de dados, as seguintes melhorias de engenharia podem ser ser aplicadas:
Mover as queries SQL de strings embutidas para arquivos .sql separados, melhorando a manutenção do código.
Substituir as execuções manuais por uma esteira automatizada com controle de falhas e retentativas.
Implementar asserções automáticas para impedir a entrada de dados zerados ou negativos na Camada Silver.