(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa
Slowly Changing Dimensions (SCD): como guardar o histórico dos dados
Data Engineering

Slowly Changing Dimensions (SCD): como guardar o histórico dos dados

Equipa bConcepts 17/01/2024 2 min

O endereço de um cliente muda. O vendedor responsável por uma conta é substituído. Um produto passa de categoria. A pergunta que separa um bom modelo de dados de um fraco é: guardamos só o valor atual, ou preservamos o histórico? É isto que as Slowly Changing Dimensions (SCD) resolvem.

O problema do histórico que se perde

Imagina que um cliente muda do Norte para o Sul. Se simplesmente atualizares a morada, todas as vendas antigas passam a parecer feitas no Sul — e a tua análise por região fica errada para trás. O passado foi reescrito. As SCD são a forma disciplinada de lidar com estas mudanças.

Slowly Changing Dimensions (SCD): como guardar o histórico dos dados

SCD Tipo 1: sobrescrever

O tipo mais simples: quando o valor muda, substitui-se o antigo. Rápido e leve, mas perde-se o histórico. Serve quando o passado não importa — corrigir uma gralha no nome, por exemplo — mas é perigoso para dados que afetam análises históricas.

SCD Tipo 2: guardar o histórico

O tipo mais usado em BI: em vez de sobrescrever, cria-se uma nova linha para o novo valor, mantendo a antiga. Cada versão tem datas de início e fim e uma marca de "atual". Assim, as vendas antigas continuam ligadas ao Norte e as novas ao Sul — o histórico fica intacto.

Como distinguir na prática

  • Tipo 1: só interessa o valor atual — usa quando o passado não conta.
  • Tipo 2: precisas de analisar "como era à data" — a escolha certa para a maioria das dimensões de negócio.

Porque isto importa para a confiança

Sem SCD bem pensadas, relatórios históricos mudam sozinhos quando os dados de referência mudam — e ninguém percebe porquê. Com elas, a análise do passado mantém-se fiel ao que realmente era. É a diferença entre um armazém de dados sério e um que engana sem querer.

Na prática

Ao desenhar uma dimensão, pergunta sempre: se este valor mudar, quero ver o histórico como era, ou só o atual? A resposta define o tipo de SCD. Este cuidado, invisível para o utilizador final, é o que faz os teus relatórios contarem a verdade ao longo do tempo. As tuas dimensões preservam o histórico, ou reescrevem o passado a cada mudança?

← Voltar aos insights
Vamos conversar?

Pronto para transformar os seus dados?

Marque uma reunião gratuita de 30 minutos e descubra como podemos ajudar a sua equipa a tomar melhores decisões.

Agendar Reunião Gratuita
bConcepts