quinta-feira, 23 de fevereiro de 2012

Introdução ao Business Intelligence:Arquitetura de Data WareHouse (DW) e Modelagem Dimensional

Construindo um Data WareHouse: Modelagem Dimensional

Tabela Fatos

Em resumo, são armazenados medidas, métricas, acontecimentos ou valores

Tabela Fatos – 3 tipos de medidas

· aditivas: são numéricas e são somadas com relação às dimensões existentes, por exemplo: quantidade, valor total dos itens.

· semi-aditivas: são numéricas, mas não podem ser somadas com relação a todas as dimensões, por exemplo: o estoque é totalizado ao longo da produto, porém ao longo das dimensões loja e data não existe o menor sentido está totalização.

· não-aditivas: dados não numéricos, por exemplo: carro1, carro2, carro3.

Tabela Fatos – Tipos de tabelas

Transaction Fact Table

Tipo de tabela de fatos em que a granularidade é uma linha para o menor nível de detalhe capturado por uma transação. Um registro numa TFT está presente somente se um evento de transação ocorre

Periodic Snapshot Fact Table

Um tipo de tabela de fatos que representa desempenho de negócio ao fim de cada período de tempo regular previsível. Snapshots diários e mensais são comuns.

Accumulating Snapshot Fact Table

Tipo de tabela de fato com datas múltiplas representando os principais pontos de controle de um processo ou pipeline relativamente de curta duração. Um

registro é inserido numa tabela de fatos instantâneos acumulados apenas uma vez,

quando o item que representa é inicialmente criado.

Tipos de Modelos Dimensionais

- O Modelo Estrela (Star Schema)

No modelo estrela todas as tabelas relacionam-se diretamente com a tabela de fatos, sendo assim as tabelas dimensionais devem conter todas as descrições que são necessária para definir uma classe, exemplo:

clip_image001

Este modelo é chamado de estrela porque a tabela de fatos fica ao centro cercada das tabelas dimensionais com o formato parecido de uma estrela. Mas o ponto forte a fixar é que as dimensões não são normalizadas.

- O Modelo Floco de Neve (Snow Flake)

No modelo Floco as tabelas dimensionais relacionam-se com a tabela de fatos, mas algumas dimensões relacionam-se apenas entre elas visando diminuir o espaço ocupado por estas tabelas. Exemplo:

clip_image002

Granularidade

Nível de detalhe da informação

Surrogate Key:

Número inteiro seqüencial. No caso das Datas, pode ser usado ou não. Em datas pode-se usar, por exemplo, o tipo date ou um numérico representando a data como YYYYMMDD, por exemplo. Utilizado para unir as dimensões às tabelas de Fatos.

Business Key

Pode ter vários atributos (chave composta) identifica o registro do sistema de origem e não se relaciona com a fato

Tabela Dimensão

descrições, características, localidade, detalhamento.

Tabela Dimensão – tipos de tabelas

  • Simples – Apenas descritiva
  • Hierárquica – Os atributos podem compor uma hierarquia

Slow-change dimension

Dificilmente sofre alterações no decorrer do tempo, exemplo estado civil

Junk Dimension

Uma dimensão abstrata com a decodificação de um grupo de flags e indicadores de baixa cardinalidade, portanto removendo os flags da tabela de fatos.

Degenerated Dimension

Uma chave de dimensão, como o número de uma transação, número de fatura, de tíquete, que não tenha nenhum atributo, portanto não se junta com uma tabela de dimensão.

Bridge Table

Uma tabela com uma chave multiparte capturando um relacionamento muitos-para muitos. Serve como uma ponte entre a tabela de fatos e a tabela de dimensão

de forma a permitir dimensões multivaloradas ou hierarquias

Centipede Fact Table

Uma tabela de fatos com muitas dimensões (mais do que 20) levando a uma esquema que lembra uma centopéia. Centopéias tipicamente resultam

quando projetistas tentam representar relacionamentos hierárquicos com uma

proliferação de dimensões separadas ao invés de aninhá-las numa única dimensão.

Quatro passos para criar um modelo dimensional

  1. Selecionar o processo de negócio que será modelado
  2. Definir grau de granularidade
  3. Definir as dimensões para cada linha do fato
  4. Identificar os fatos numéricos para cada linha do fato

[]s

Nenhum comentário: