O que é SCD - Dimensão de alteração lenta?
Existem alguns tipos de SCD.
Dependendo do tipo de SCD(dimensão de alteração lenta), você pode manter nenhuma,
uma ou mais alterações históricas de linhas.
A ideia é simples: toda vez que a linha está
atualizando, uma versão antiga (antes de UPDATE ou DELETE) da linha será
mantida na tabela SCD.
A implementação nem sempre é fácil. Vamos dar uma
olhada nos exemplos.
Como exemplo de dados de origem, usarei a seguinte
linha de dados:
No exemplo acima, CustomerId é chave primária na
origem do banco de dados(OLTP).
Introduzimos a chave substituta (CustomerKey) no DW
para evitar a duplicação do CustomerId original e otimizar o desempenho,
especialmente quando o sistema de origem usa caractere ou chaves complexas.
Tipo SCD 0
Este tipo não mantém alterações de atributos. Mantém
apenas o valor original sem alterações. É usado principalmente para atributos
que não podem ser alterados, como data de nascimento.
SCD Tipo 1: substituindo o histórico por
um atributo
Esse método não pode rastrear as alterações nos dados
e substitui os dados antigos por novos. Depois que nosso cliente alterar seu
endereço, o novo endereço será substituído:
Como podemos ver, é muito simples implementar e manter
o processo. É uma atualização simples. Em outras mãos, a desvantagem dessa
abordagem é a falta de histórico da linha no Data Warehouse.
SCD Tipo 2: adicionando novas linhas
A metodologia é preservar o histórico, adicionando
novas linhas e não há limite no número de alterações mantidas.
Além disso, você pode decidir de que maneira deseja ver
as linhas antigas mantendo a coluna de flag (isCurrent) e/ou UpdateDate:
ou versão(version) da linha que será
incrementada sequencialmente:
SCD Tipo 3: colunas históricas adicionais
Nesta abordagem, você pode gerenciar uma quantidade
limitada de histórico adicionando colunas adicionais para rastrear atributos.
Querendo ter cidade de cliente anterior e atual, você
pode implementar colunas: PreviousCity e CurrentCity. Haverá apenas uma linha
no Data Warehouse (DW) por banco de dados de origem, portanto, o Tipo 3 tem
usabilidade limitada e é menos popular que o Tipo 1 e 2.
Você deve ter cuidado se quiser usar o Tipo 3 do SCD.
Certifique-se de que o analista de negócios e/ou seu cliente estejam cientes
das limitações do histórico.
SCD Tipo 4: tabela histórica separada
Esse tipo usa tabelas separadas para manter os
registros atuais e as alterações históricas. Vale a pena usar quando:
• A dimensão está mudando com frequência
ou
• Dimensão é uma tabela de várias milhões
de linhas
SCD Tipo 6:
Esta abordagem é numerada como 6 como 1 + 2 + 3 = 6,
bem como 1x2x3 = 6. Portanto, é uma combinação desses três tipos:
• Mantenha os valores anteriores e atuais para o
atributo (como Tipo 3, observe as colunas: “HistoricCity”, “CurrentCity”)
• Substitui todos os registros da versão atual do
atributo (como Tipo 1, veja a coluna “CurrentCity”)
• Mantém a versão histórica do atributo (como Tipo 2,
aparência de colunas: “IsCurrent”, “StartDate”, “EndDate”)
Vamos ver como a linha está sendo alterada e como isso
afeta o DW. O primeiro carregamento da linha:
Linhas na tabela de clientes da DW após a primeira
realocação do cliente:
Linhas na tabela de clientes da DW após a segunda
recolocação do cliente:
Qual tipo devo escolher?
Como consultor profissional, respondo
profissionalmente:
Isso depende
Pergunte à sua equipe de negócios, análise de negócios
ou a seu cliente: o que eles precisam no data warehouse.
Talvez eu não tenha explicado, mas na mesma tabela
você pode aplicar diferentes tipos de SCD em cada coluna.
Por exemplo: Digite 2 na coluna Cidade, digite 1 na
coluna Data de Nascimento. Tudo na mesma tabela.
Por isso, peça-lhes todas as dimensões:
• quais atributos são constantes,
• quais atributos são variáveis?
• quais atributos devem ser totalmente rastreados, o
que deve manter apenas versões anteriores e atuais?
• Quantas linhas estão na tabela agora / são esperadas
nos próximos 10 anos?
Guarde estas respostas como prova. As pessoas,
especialmente os clientes, adoram mudar de ideia.
Você sabe o que eu quero
dizer.
Se ainda não tiver certeza de qual escolher, lembre-se
de que:
Manter um histórico das mudanças é bom para você, simplesmente porque os requisitos podem mudar.
Além dos tipos 0 e 1, na minha opinião, os mais populares
são o tipo 2 e o tipo 4.
Se precisar de mais informações entre em contato com a equipe do clicouvendas.com.br.
Nenhum comentário:
Postar um comentário