Pipeline ativo · Monitorando transações

AWS FRAUD DETECTION PIPELINE

Pipeline ELT serverless na AWS para detecção automatizada de fraudes em transações financeiras — Terraform IaC, Parquet, Athena e regras de negócio customizáveis.

threat_monitor.log
Transações Processadas
8,247
sessão atual · geradas com Faker + Boto3
Fraudes Detectadas
312
3.8% do volume total
Precisão
96.2%
regras de negócio
Valor em Risco Bloqueado
R$ 4.7M
transações acima de R$ 5k · estados suspeitos

Arquitetura ELT

Pipeline End-to-End

Abordagem ELT serverless com dados segregados em camadas Raw e Processed, particionamento por data e query engine SQL sem servidor.

🤖
PRODUCER
Faker · Boto3
Gera transações sintéticas e envia JSON para S3 Raw
🪣
S3 RAW
JSON · Versionado
Data Lake Raw com Block Public Access e versionamento
🔍
FRAUD ETL
Pandas · PyArrow
Aplica regras de detecção e converte JSON → Parquet
📦
S3 PROCESSED
Parquet · Particionado
Dados otimizados para analytics com compressão colunar
🗄️
GLUE + ATHENA
Serverless SQL
Catálogo de metadados + queries SQL no Data Lake
fraud_detector.py · execução
# Iniciando pipeline... $ python src/processing/fraud_detector.py Conectado ao bucket S3: fraud-detection-raw-xxxx Lendo 8,247 transações em JSON... Aplicando regras de detecção: Regra 1: valor > R$ 5,000189 alertas Regra 2: estado em ['CE','MA','PA']123 alertas Total fraudes detectadas: 312 (3.8%) Convertendo JSON → Parquet (PyArrow)... Particionando por data=2024-01-15 Upload para s3://fraud-detection-processed-xxxx/ Glue Crawler executado · catálogo atualizado Pipeline concluído com sucesso! ✓

Tecnologias

Stack Técnico

Ferramentas escolhidas pelo equilíbrio entre custo serverless, performance analítica e automação de infraestrutura como código.

🏗️
Terraform
IaC · Infraestrutura
StateMódulosIAM
🪣
AWS S3
Data Lake · Raw + Processed
ParquetVersionamento
🗄️
AWS Glue
Catálogo · Crawler
MetadadosSchema
🔍
Athena
Query Engine Serverless
SQLPay-per-query
🐍
Python 3.x
Linguagem Principal
PandasBoto3Faker
📦
PyArrow
Formato Parquet
ColunarCompressão
🔐
AWS IAM
Segurança · Least Privilege
PolíticasRoles
Serverless
Sem cluster fixo
S3GlueAthena

Detecção de Fraudes

Regras de Negócio

O ETL aplica regras customizáveis com base em valor da transação e geolocalização — extensível para ML em iterações futuras.

⚠ ALERTA DE FRAUDE
Regra 1 — Valor Alto
# Transação acima do limite de risco if transaction['valor'] > 5000: flag_as_fraud(transaction) alert_level = "HIGH"

Transações superiores a R$ 5.000 são sinalizadas como suspeitas e roteadas para revisão. Capturou 189 alertas na sessão atual.

⚠ ALERTA DE FRAUDE
Regra 2 — Estado Suspeito
# Estados com histórico de fraude elevado suspeitos = ['CE', 'MA', 'PA'] if tx['estado'] in suspeitos: flag_as_fraud(transaction)

Estados com padrão histórico de fraude recebem sinalização automática. Capturou 123 alertas. Regra facilmente extensível.

📦 OUTPUT PARQUET
Saída — Particionada por Data
# Salva no Data Lake processado df.to_parquet( f"s3://processed/data={today}/", engine='pyarrow', partition_cols=['is_fraud'] )

JSON → Parquet com particionamento por data e flag de fraude, reduzindo custo de queries no Athena em até 73%.

📊 ATHENA SQL
Análise — Query Serverless
-- Query no Amazon Athena SELECT estado, COUNT(*) fraudes, AVG(valor) ticket_medio FROM fraud_db.fraudes_detectadas WHERE is_fraud = true GROUP BY estado ORDER BY fraudes DESC

Queries SQL serverless diretamente no Data Lake. Sem cluster fixo — paga apenas pelas queries executadas.

73%
Redução de custo JSON → Parquet
R$ 5k
Limite de risco por transação
100%
Serverless — sem cluster fixo

Aprendizados

O que foi desenvolvido

Competências técnicas consolidadas durante a construção do pipeline end-to-end em ambiente AWS real.

📊
Engenharia de Dados
  • Pipeline ELT end-to-end serverless
  • Otimização com formatos colunares (Parquet vs JSON)
  • Particionamento para performance analítica
  • Segregação Raw / Processed / Analytics
☁️
AWS & DevOps
  • Contorno de limitações de Service Quotas
  • Políticas IAM com Least Privilege
  • Terraform — state management e módulos
  • Adaptação de Kinesis streaming para batch S3
🔐
Segurança & Boas Práticas
  • Block Public Access e versionamento S3
  • Credenciais via variáveis de ambiente
  • Documentação como código (README técnico)
  • Controle de acesso granular por camada

Como executar

Deploy em 4 passos

AWS CLI configurado, Terraform e Python instalados — o restante é automatizado pela infraestrutura como código.

1
Provisionar Infraestrutura
Terraform · ~2 min
# Entrar na pasta terraform
cd terraform && terraform init
terraform apply -auto-approve
# ✓ 2 Buckets S3 · Glue Database · Políticas IAM
2
Instalar Dependências
pip · Python 3.8+
pip install -r requirements.txt
# ✓ boto3 · pandas · pyarrow · faker
3
Gerar Dados Sintéticos
Producer · Faker + Boto3
python src/producer/main.py
# Deixe executar por alguns segundos
# Ctrl+C para pausar
# ✓ JSONs de transações salvos no S3 Raw
4
ETL + Athena
Fraud Detector · SQL
python src/processing/fraud_detector.py
# ✓ Fraudes detectadas · Parquet no S3

# No console Amazon Athena:
SELECT * FROM fraud_detection_db.fraudes_detectadas;

Serverless · IaC · Open Source

Explore o
código fonte

Pipeline completo com IaC, regras de detecção customizáveis e queries analíticas prontas para produção.

⬡ Ver no GitHub ↗ LinkedIn ✉ Contato