Projeto de laboratorio para simular um cenario real de dados OLTP -> DW em SQL Server, com ETL incremental, auditoria tecnica e monitoramento operacional via Streamlit.
- Infra Docker one-shot pronta (
SQL Server + init + Streamlit monitor + Streamlit vendas + Streamlit metas + Streamlit descontos + alerts-runner + backup). - Auditoria de conexoes ativa (tabela
audit.connection_login_events+ arquivo.sqlaudit). - Escopo validado ponta a ponta para
dim_cliente,dim_produto,dim_regiao,dim_equipe,dim_vendedor,dim_desconto,fact_vendas,fact_metasefact_descontos. - OLTP (
ECOMMERCE_OLTP) e DW (DW_ECOMMERCE) inicializados automaticamente pelo bootstrap.
Este repositorio combina modelagem dimensional com operacao de dados:
- OLTP de origem (
ECOMMERCE_OLTP) com seeds e simulacao incremental. - DW de destino (
DW_ECOMMERCE) com dimensoes, fatos e views analiticas. - ETL incremental em Python com watermark e auditoria de execucao.
- Monitoramento Streamlit com visao de pipeline, qualidade, SLA e auditoria tecnica.
- Objetivo final: auditar operacionalmente todas as dimensoes e fatos do projeto.
- Garantir execucao auditada para todo o modelo dimensional:
7 dimensoes (
dim_*) e 3 fatos (fact_*). - Rastrear cada etapa de carga em
audit.etl_runeaudit.etl_run_entity. - Validar qualidade e reconciliacao por entidade/fato antes da evolucao de escopo.
- Monitorar SLA, atrasos, falhas recorrentes e saude de conectividade em painel unico.
- Infra Docker one-shot:
SQL Server + sql-init + Streamlit monitor + Streamlit vendas + Streamlit metas + Streamlit descontos + alerts-runner + backup. - Auditoria de conexao ativa:
audit.connection_login_eventse SQL Server Audit (.sqlaudit). - Readiness operacional no bootstrap da stack para as entidades ETL implementadas (
dim_cliente,dim_produto,dim_regiao,dim_equipe,dim_vendedor,dim_desconto,fact_vendas,fact_metasefact_descontos). - ETL incremental Python implementado para
dim_cliente,dim_produto,dim_regiao,dim_vendedor,dim_equipe,dim_desconto,fact_vendas,fact_metasefact_descontos. - Dashboards publicados: monitoramento ETL (
:8501), vendas R1 (:8502), metas R1 (:8503) e descontos/ROI R1 (:8504). - Fluxo validado ponta a ponta: extracao OLTP, upsert DW, watermark, trilha em
audit.*e monitoramento visual.
- Base operacional concluida: OLTP funcional, DW base, ETL incremental inicial e monitoramento tecnico.
- Concluido: publicacao dos dashboards R1 de vendas, metas e descontos/ROI.
- Concluido: consolidacao da suite automatizada minima de testes (integridade + smoke de filtros em vendas, metas e descontos).
- Concluido: runner de alertas externos para falha ETL e atraso de SLA (Discord webhook com fallback seguro).
- Meta: runbook operacional formal e deploy de portfolio.
Fonte oficial do estado atual:
- Produto e lacunas:
docs/produto/PRD.md(secoes 7, 13 e 17). - Plano semanal de execucao:
docs/produto/PLANO_FECHAMENTO_PORTFOLIO_MVP.md. - Snapshot periodico:
docs/status_reports/.
- Fonte OLTP (
sql/oltp): tabelas transacionais + seed base + seed incremental. - Destino DW (
sql/dw): dimensoes, fatos, views e contratos de estrutura. - Controle ETL (
ctleaudit): estado incremental, runs e entidades por run. - ETL Python (
python/etl): runner, entidades e SQL de extract/upsert. - Dashboards (
dashboards/streamlit): monitoramento operacional e dashboards de negocio. - Operacao Docker (
docker): stack one-shot, variaveis, backup e health checks.
Arquitetura visual (Mermaid):
Pre-requisitos:
- Docker Desktop (ou Docker Engine + Compose v2)
- PowerShell
Subir a stack completa:
powershell -ExecutionPolicy Bypass -File docker/up_stack.ps1Endpoints:
- SQL Server:
localhost:1433 - Streamlit monitor ETL:
http://localhost:8501 - Streamlit dashboard vendas:
http://localhost:8502 - Streamlit dashboard metas:
http://localhost:8503 - Streamlit dashboard descontos/ROI:
http://localhost:8504
Descer a stack:
powershell -ExecutionPolicy Bypass -File docker/down_stack.ps1docker exec dw_etl_monitor python python/etl/run_etl.py --entity dim_cliente
docker exec dw_etl_monitor python python/etl/run_etl.py --entity dim_produto
docker exec dw_etl_monitor python python/etl/run_etl.py --entity dim_regiao
docker exec dw_etl_monitor python python/etl/run_etl.py --entity dim_vendedor
docker exec dw_etl_monitor python python/etl/run_etl.py --entity dim_equipe
docker exec dw_etl_monitor python python/etl/run_etl.py --entity dim_desconto
docker exec dw_etl_monitor python python/etl/run_etl.py --entity fact_vendas
docker exec dw_etl_monitor python python/etl/run_etl.py --entity fact_metas
docker exec dw_etl_monitor python python/etl/run_etl.py --entity fact_descontos
docker exec dw_etl_monitor python python/etl/run_etl.py --entity allproject_e-commerce_dw/
|-- dashboards/
| `-- streamlit/
|-- docker/
|-- docs/
|-- notebooks/
|-- python/
| |-- data_generation/
| |-- etl/
| |-- tests/
| `-- utils/
|-- scripts/
|-- sql/
| |-- dw/
| `-- oltp/
|-- tests/
`-- data/
- Infra Docker one-shot
- Arquitetura atual (runtime + tecnologias)
- Indice de diagramas
- Guia SQL (Docker-first)
- ETL Python
- Guia de Dashboards
- Controle ETL e auditoria
- Monitoramento Streamlit
- Dashboard de vendas R1
- Dashboard de metas R1
- Dashboard de descontos/ROI R1
- Testes recorrentes operacionais
- Alertas externos ETL
- Snapshots de dashboards para portfolio
- Deploy Streamlit Community (snapshot)
- OLTP (fonte)
- Views auxiliares DW
- Seguranca de consumo BI
- Contratos de dados
- Queries analiticas
- Plano de fechamento portfolio MVP
- Infra Docker consolidada para operacao one-shot.
- Escopo operacional de bootstrap consolidado para as entidades ETL implementadas (6 dimensoes +
fact_vendas+fact_metas+fact_descontos). - ETL incremental implementado para as entidades do rollout atual com onboarding via
ctl.etl_control. - Streamlit evoluido para matriz geral de pipelines, timeline de execucao, qualidade/reconciliacao e painel de SLA/alertas.
- Auditoria tecnica consolidada no dashboard: conexoes, taxonomia de erros e correlacao temporal com falhas ETL.
- Direcionamento oficial de projeto atualizado para auditoria de todas as dimensoes e fatos.