Módulo 5: Modelagem dimensional e esquema estrela

Aula 1 de 4

Fato e dimensão: a decisão que define o projeto

Como olhar para uma tabela e saber imediatamente onde ela entra no modelo.

18 minutos de leitura


Modelagem dimensional é simples de enunciar: eventos vão para tabelas fato, contextos vão para tabelas dimensão. A dificuldade está em aplicar isso quando a área te entrega uma planilha com 90 colunas misturando tudo.

CaracterísticaTabela FatoTabela Dimensão
ConteúdoEventos que aconteceramDescrição de entidades
ExemplosVendas, apontamentos, lançamentos, atendimentosProduto, Cliente, Calendário, Funcionário, Loja
VolumeMilhões de linhasDezenas a milhares
Colunas típicasChaves + valores numéricos + datasChave + atributos descritivos
Uso no visualVira medida (soma, contagem)Vira eixo, legenda, filtro
CrescimentoCresce todo diaCresce devagar

Granularidade: a pergunta mais importante

Granularidade é o que representa UMA linha da tabela fato. Uma linha por item do pedido? Por pedido? Por dia e produto? Você precisa saber responder em uma frase. Se não sabe, o modelo vai duplicar valores.

  • fVendas: uma linha por item de pedido (nota + produto).
  • fEstoque: uma linha por produto, depósito e dia (foto diária).
  • fMetas: uma linha por vendedor, produto e mês.
  • Nunca misture granularidades na mesma tabela fato. Se precisa de duas, faça duas fatos ligadas às mesmas dimensões.

Os tipos de tabela fato

TipoO que guardaExemplo
TransacionalUm evento por linhaCada venda, cada apontamento de produção
Snapshot periódicoUma foto do estado em cada períodoSaldo de estoque por dia, headcount por mês
Snapshot acumuladoUma linha por processo, com várias datasPedido: data de criação, aprovação, faturamento, entrega

Exercício prático

Liste todas as tabelas que você tem em um projeto e classifique cada uma em fato ou dimensão. Para cada fato, escreva em uma frase qual é a granularidade de uma linha.