[BI] Slowly Changing Dimensions
Alguns atributos de uma dimensão podem sofrer mudanças
Alguns atributos de uma dimensão podem sofrer mudanças, por exemplo, o estado civil de uma pessoa, a categoria de um produto, a UF de uma Cidade. Para controlar estas mudançãs utitizamos o SCD (Slowly Changing Dimensions).
Existem 3 técnicas:Â
1) Sobrescreve
 -Corrige enganos ou remove dados antigos
2) Cria nova Linha/Flag
 -Divide os dados históricos
3) Adiciona um atributo
 -Trabalha com 2 informações na mesma linha de dados, dado anterior e dado atual
TIPO 1:Â SOBRESCREVEÂ
-Atualiza a linhaÂ
-Não é necessário alterar a chave da dimensãoÂ
-É necessário refazer os objetos agregados
Este tipo é mais fácil de ser implementado, pois os dados são sobrescritos. Deve ser implementado quando não existe a necessidade de separar os dados para controle de perfis, ou os dados que devem sempre ser mantidos em sua última versão.
VantagensÂ
-Fácil e rápido para implementar e executar a carga da dimensão.
Desvantagens:Â
-O histórico é perdido. -Podem ocorrer erros quando consideramos os dados ao longo do tempo.
TIPO 2: CRIA NOVA LINHA/FLAGÂ
-Gera uma nova surrogate keyÂ
-Insere uma linha na dimensãoÂ
-Não é necessário recriar os dados agregados.
Este tipo é utilizado quando existe a necessidade de se controlar os perfis e alterações de um dado através do tempo.Â
Datas de inÃcio e fim podem ser utilizadas para controle da versão atual, mas prefiro uma Flag(bit) Ativo.
Vantagens:Â
-É perfeito para fazer o controle de perfis e versões da informação.
Desvantagens:Â
-Torna o ETL mais complexo, pois é necessário administrar e manter surrogates keys.
-As dimensões tem maior número de linhas e se tornam mais complexas. -Usuários devem estar atentos e devem ser orientados em como devem fazer as queries pois um produto pode se repetir várias vezes em uma dimensão.
TIPO 3: ADICIONA UM ATRIBUTOÂ
-Não é muito utilizadaÂ
-Adiciona uma nova coluna na tabela, com o nome do atributo e ums descrição. Ex: Categoria e Categoria_Anterior.Â
-Copia o valor existente para a coluna chamada de Anterior.Â
-Trata o valor corrente como Tipo1(sobrescreve)
Vantagens:Â
-É apropriada para alterações simples, que exijam comparações entre uma situação passada e atual.
Desvantagens:Â
-Não mantém todos os históricos.
Fonte: Cetax Consultoria
Num post futuro iremos ver esta implementação na prática.
Related articles
Comando SQL Update usando Try Catch
Na prática e no database
SELECT Format Date Time for many countries
It is a good tip to use day by day
Creating a SiteMap using SQL Database
Como indexar melhor meu site e links?
Membership $5/mo
✓ Read full articles ✓ Read/write forums ✓ Access podcast ✓ Access full jobs opportunities ✓ Access eBooks ✓ Access magazine ✓ Access videos |
Subscribe now $5/mo |
Free
✓ Read open articles x Read/write forums ✓ Access podcast x Access full jobs opportunities x Access eBooks x Access magazine x Access videos |