← Voltar aos projetos

MODELAGEM DE DADOS · PROJETO CONCLUÍDO

Modelo Analítico de Dados para E-commerce

Dos arquivos da Olist a uma base relacional validada: estruturação de dados para analisar valores financeiros, contribuição dos vendedores e experiência de entrega.

Capa original do projeto Modelo Analítico de Dados para E-commerce

CONTEXTO E PROBLEMA

Antes dos indicadores, uma base consistente.

Um pedido pode conter vários itens, pagamentos e vendedores. Combinar essas informações sem respeitar suas granularidades pode duplicar valores e produzir indicadores incorretos. Desenvolvi um modelo relacional e um processo de carga e validação para transformar arquivos separados em uma base rastreável para análise.

  • Como relacionar as entidades sem multiplicar valores financeiros?
  • Como comparar o valor dos itens, o frete e os pagamentos registrados?
  • Como avaliar a contribuição dos vendedores preservando os limites de atribuição?

DADOS E PREPARAÇÃO

99.441 pedidos, diferentes unidades de análise.

Utilizei o Brazilian E-Commerce Public Dataset by Olist, com compras entre setembro de 2016 e outubro de 2018. A base CORE validada reúne 99.441 pedidos, 112.650 itens, 103.886 registros de pagamento e 3.095 vendedores, além de clientes, produtos, avaliações e informações geográficas.

O processo ELT preserva os arquivos de origem na camada RAW e aplica as transformações no PostgreSQL para construir a CORE. A validação confere volumes, chaves, integridade referencial, nulabilidade, domínios e valores monetários. As exceções de cobertura permanecem identificáveis: há, por exemplo, um pedido entregue com itens e sem pagamento.

METODOLOGIA

Dos requisitos ao consumo em BI.

  1. Modelagem conceitual, lógica e física. Identificação de entidades, cardinalidades e regras de negócio, seguida da implementação de tabelas, chaves e restrições no PostgreSQL.
  2. Carga e validação. Ingestão transacional, transformação de RAW para CORE e reconciliação entre origem e destino, com testes automatizados.
  3. Camada analítica. Pré-agregação de itens e pagamentos por pedido, definição de populações e métricas e criação de views reutilizáveis no schema analytics.
  4. Power BI. Construção do relatório e do modelo semântico versionados em PBIP, PBIR e TMDL, preservando os contratos de consumo e as granularidades.

DECISÕES DE MODELAGEM

As relações foram definidas a partir da fonte.

A modelagem exigiu distinguir identificadores, validar cardinalidades e reconhecer situações em que um campo aparentemente único não identifica sozinho um registro. Essas decisões orientam tanto a integridade do banco quanto a interpretação das consultas.

Cliente e histórico de compras
O modelo preserva o identificador do registro de cliente e o identificador único do consumidor. Essa distinção permite relacionar o cadastro ao pedido e investigar compras recorrentes sem tratar todos os registros como pessoas diferentes.
Itens e pagamentos
As chaves combinam o pedido com o identificador do item ou com a sequência do pagamento. Assim, um pedido pode manter seus vários itens e pagamentos como ocorrências distintas, com preços, fretes e valores próprios.
Avaliações
O identificador de avaliação isolado não é único na fonte. A chave composta por avaliação e pedido preserva essa característica, evitando impor uma unicidade que os dados não sustentam.
Prefixos de CEP
Uma entidade própria conecta os prefixos usados por clientes, vendedores e geolocalização. As coordenadas permanecem em uma relação separada, pois um prefixo pode estar associado a várias observações geográficas.

O modelo conceitual descreve o domínio; o lógico formaliza tabelas, chaves e relacionamentos; o físico implementa essas decisões no PostgreSQL. Essa separação mantém rastreável a passagem entre a regra de negócio e sua implementação.

Examinar chaves e relacionamentos no modelo lógico ↗

Diagrama do modelo lógico relacional da Olist, com tabelas, atributos e relacionamentos de pedidos, itens, pagamentos, clientes, produtos e vendedores
Modelo lógico original do projeto. Selecione a imagem para examinar as tabelas em tamanho original.

ELT E QUALIDADE

Três camadas, responsabilidades explícitas.

  1. RAW · preservar a origem. Recebe os dados dos CSVs. A carga substitui a anterior, evitando acumular cópias do mesmo dataset e mantendo uma referência para conferir as transformações.
  2. CORE · consolidar o modelo. Aplica transformações e restrições para materializar as entidades relacionais. A reconciliação de volumes e as verificações de integridade acompanham essa passagem.
  3. ANALYTICS · estabilizar o consumo. Disponibiliza estruturas reutilizáveis para indicadores e exportações. As regras de cálculo deixam de depender de uma consulta isolada ou de uma interpretação específica no relatório.

A qualidade é verificada em diferentes níveis: estrutura do banco, ingestão, transformação, orquestração e resultado da carga. Os testes automatizados também cobrem os artefatos do Power BI; o GitHub Actions executa verificações de dependências, lint, formatação e testes.

Exceções preservadas para investigação.

No histórico completo, 164 pedidos cancelados possuem pagamentos e não possuem itens. Excluir essas ocorrências silenciosamente reduziria a visibilidade sobre a fonte. O projeto mantém consultas de cobertura e declara quais relações cada indicador exige, separando a população financeira principal dos controles sobre o histórico completo.

Examinar validações do ELT ↗ · Examinar testes automatizados ↗

RESULTADOS E INTERPRETAÇÃO

Indicadores acompanhados de controles.

01 · A junção direta compromete as somas.

O controle entre itens e pagamentos produziu 117.601 linhas na junção direta. Itens se repetem conforme a quantidade de pagamentos, e pagamentos conforme a quantidade de itens. A solução agrega cada relação separadamente por pedido antes de combiná-las.

O resultado técnico é uma regra explícita de consumo: as somas financeiras precisam respeitar a granularidade do pedido.

Examinar consulta de controle ↗

02 · Valor bruto e pagamentos não são equivalentes.

No recorte de 96.477 pedidos entregues com itens e pagamentos, os resultados históricos são:

Valor bruto · itens + frete
R$ 15.419.630,29
Pagamento registrado
R$ 15.422.461,77
Diferença agregada
R$ 2.831,48
Frete / valor bruto
14,26%

A conferência individual identificou 96.178 pedidos conciliados dentro da tolerância de R$ 0,01, 260 com pagamento maior que o valor bruto e 39 com valor bruto maior que o pagamento. A maior diferença absoluta observada foi de R$ 182,81.

A diferença agregada não demonstra conciliação de todos os pedidos: valores positivos e negativos podem se compensar. Por isso, a reconciliação permanece disponível por pedido. O valor bruto também não representa lucro ou receita contábil.

03 · A participação varia entre os vendedores.

Entre os 2.970 vendedores ativos em pedidos entregues, os dez maiores representam 13,27% do valor dos itens. Já os 10% maiores concentram 67,11% desse valor no histórico analisado.

A distribuição permite priorizar a análise dos vendedores com maior contribuição financeira. Esses percentuais descrevem a base observada; não medem participação no mercado brasileiro nem atribuem responsabilidade causal por atrasos ou avaliações.

04 · Um pedido pode participar do resultado de mais de um vendedor.

Na base de pedidos entregues com itens, 1.275 pedidos possuem múltiplos vendedores. A atribuição reconciliou 110.197 itens e R$ 13.221.498,11 em valor dos itens, com diferença zero entre a base e os valores atribuídos.

Itens e seus valores podem ser atribuídos diretamente ao vendedor. Já a soma das participações vendedor-pedido não equivale à contagem de pedidos distintos do marketplace. Esse recorte inclui o pedido entregue sem pagamento e, por isso, difere da população financeira de 96.477 pedidos.

05 · Prazo de envio e entrega medem etapas diferentes.

Na granularidade vendedor-pedido, foram observadas 97.819 participações. Entre as observações com informação disponível, 8,97% apresentaram algum item enviado após o limite e 8,02% estavam associadas a pedidos entregues após a estimativa.

Os indicadores ajudam a selecionar situações para investigação operacional. Envio após o limite e atraso da entrega final não são medidas intercambiáveis: a entrega e a avaliação pertencem ao pedido, e a associação com um vendedor não comprova sua responsabilidade pelo resultado.

Fonte dos volumes, controles e resultados: documentação da camada analítica, seções 3, 4 e 6.5 ↗.

EXPLORAÇÃO INTERATIVA

Da visão geral ao detalhe do vendedor.

O relatório Power BI organiza os resultados em cinco páginas: Visão Geral, Financeiro e Reconciliação, Vendedores e Concentração, Operação e Experiência e Detalhe do Vendedor.

O consumo se apoia em quatro views: pedido financeiro, financeiro mensal, vendedor-pedido e desempenho do vendedor. Cada uma tem uma unidade de análise definida, permitindo combinar a visão executiva com a investigação dos registros sem relacionar diretamente fatos de granularidades incompatíveis.

  • Visão Geral: síntese dos principais indicadores para iniciar a leitura do negócio.
  • Financeiro e Reconciliação: comparação entre componentes do valor bruto e pagamentos registrados.
  • Vendedores e Concentração: leitura da contribuição e da distribuição do valor entre vendedores.
  • Operação e Experiência: exploração dos indicadores de prazo, entrega e avaliação.
  • Detalhe do Vendedor: aprofundamento da análise em um vendedor específico.

O relatório e o modelo semântico são versionados junto ao código. Os formatos PBIP, PBIR e TMDL permitem examinar a estrutura do produto de BI no repositório, complementando a experiência interativa do dashboard.

LIMITAÇÕES E CONCLUSÃO

Consistência também exige delimitar a interpretação.

Os dados são históricos e não representam a operação atual da Olist. Meses com cobertura diária parcial exigem cuidado nas comparações; as consultas mensais calculam crescimento apenas quando o mês atual e o anterior possuem cobertura completa.

Pagamentos, avaliações e entrega pertencem ao pedido e não devem ser automaticamente atribuídos a cada vendedor. Atrasos associados a pedidos com participação de um vendedor não comprovam responsabilidade individual. O dataset também não fornece os custos necessários para calcular lucro.

O projeto conclui o percurso entre requisitos, modelagem, ELT e Power BI com uma base validada, métricas documentadas e controles verificáveis. Sua principal contribuição é permitir que os indicadores sejam examinados junto às regras que os produzem.

TECNOLOGIAS

Ferramentas aplicadas ao projeto.

  • SQL
  • PostgreSQL
  • Python
  • pandas
  • Power BI
  • DAX
  • Git
  • GitHub Actions