Plataforma de queries SQL para análise de dados operacionais e dashboards.
Desenvolvido em 2019 para análise de dados durante experiência em órgão público.
SQL-Analytics-Platform/
├── queries/
│ ├── kpis/ # Indicadores chave de performance
│ ├── dashboard/ # Queries para dashboards
│ ├── analise/ # Análises e segmentações
│ └── views/ # Views materializadas
├── etl/ # Scripts de ETL e validações
├── procedures/ # Stored procedures
└── docs/ # Documentação completa
- PostgreSQL 11+
- SQL ANSI padrão
- PL/pgSQL para procedures
- Métricas de vendas, produção e qualidade
- Agregações por período
- Indicadores consolidados
- Dashboard operacional (visão diária)
- Dashboard gerencial (visão mensal)
- Métricas com variações temporais
- Análise temporal (MoM, YoY)
- Segmentação de clientes
- Comparativos e benchmarks
- Carga inicial de dados históricos
- Validações de qualidade
- Transformações e limpeza
- Métricas agregadas para performance
- Histórico consolidado
- Atualização via procedures
psql -U usuario -d database -f queries/kpis/kpi_vendas.sqlCALL atualiza_metricas();CALL valida_dados('nome_tabela');Documentação detalhada disponível em:
- Processos ETL - Arquitetura e fluxos ETL
- Catálogo de Queries - Referência completa de queries
\i queries/dashboards/kpis_principais.sql./scripts/run_etl.sh\i queries/validacao/validar_integridade.sql
\i queries/validacao/validar_duplicatas.sql-- Executar query de KPIs
\i queries/dashboards/kpis_principais.sql
-- Resultado esperado:
-- transacoes_mes | receita_mes | ticket_medio | pico_transacoes
-- 15234 | 1523456.78 | 99.99 | 1523-- Consultar tendências mensais
\i queries/analytics/analise_temporal.sql
-- Filtra últimos 6 meses
SELECT * FROM (
\i queries/analytics/analise_temporal.sql
) AS analise
LIMIT 6;#!/bin/bash
# Script de execução ETL
echo "Iniciando ETL..."
# Validação pré-carga
psql -f queries/validacao/validar_integridade.sql
# Extração
psql -f queries/etl/extract_dados_operacionais.sql
# Transformação
psql -c "CALL transform_dados();"
# Carga
psql -f queries/etl/load_tabelas_fato.sql
# Validação pós-carga
psql -f queries/validacao/validar_duplicatas.sql
echo "ETL concluído!"Atualizar métricas do dashboard diariamente:
-- 1. Atualizar views materializadas
REFRESH MATERIALIZED VIEW mv_kpis_diarios;
-- 2. Consultar dados atualizados
SELECT * FROM mv_kpis_diarios
WHERE data >= CURRENT_DATE - 7
ORDER BY data DESC;Segmentar clientes por valor:
\i queries/analytics/segmentacao.sql
-- Filtrar apenas segmento premium
SELECT * FROM segmentacao_clientes
WHERE segmento = 'premium';Solução: Adicionar índices recomendados
CREATE INDEX idx_transacoes_data ON transacoes(data_transacao);
CREATE INDEX idx_transacoes_status ON transacoes(status);Solução: Executar validação e limpeza
\i queries/validacao/validar_duplicatas.sql
-- Analisar resultados e executar limpeza manual- KPIs principais: ~100ms (1M registros)
- Análise temporal: ~200ms (1M registros)
- Segmentação: ~500ms (1M registros)
- CTEs para legibilidade e performance
- Window functions para comparativos
- Índices nas colunas mais consultadas
- Views materializadas para dados agregados
- SQL ANSI padrão
- Nomenclatura em snake_case
- Comentários descritivos em cada arquivo
- Queries organizadas por módulo funcional