quarta-feira, 26 de setembro de 2007

Modelo Dimensional!!

Antes de explicar o que é a Modelação Dimensional, importa referir a visão de um Gestor de uma dada empresa: “Vendemos n produtos em várias lojas e o nosso desempenho é medido ao longo do tempo”. Que palavras-chave podemos destacar do Gestor?
  • Produtos
  • Lojas
  • Tempo

A estas palavras designamos de Dimensões, portanto podemos pensar no negócio como um cubo de n dimensões e que cada célula do cubo guarda valores – medidas ou factos, relativos à combinação das várias dimensões do negócio:

É de realçar que as dimensões são hierárquicas por natureza. Por exemplo, no caso dos produtos podemos ter a hierarquia:

Produto -> Categoria -> Indústria

Ou por exemplo, em relação à data:

Dia -> Semana -> Mês -> Ano

Os modelos DW baseiam-se em modelos dimensionais, que para além das vantagens do modelo relacional – guardar infinitos dados e efectuar análises, permite que o tempo de resposta seja bastante inferior e que seja mais compreensível a visualização dos dados.

Para representação de modelos dimensionais, podemos usar o esquema em Estrela, esquema em Flocos de Neve e esquema em Constelação.

Vou utilizar o esquema em Estrela, para explicar uma tabela de Factos:Como podemos verificar, a tabela do meio, designada por Tabelas de Factos, guarda os factos sobre o negócio e está ligada a um conjunto de Tabelas de Dimensão, que guardam os vários atributos das Dimensões do negócio. Este esquema designa-se por “Estrela”...e porquê? Porque a organização das tabelas está em forma de estrela! Esta era difícil!!
Após este briefing deveras agradável, podemos concluir que uma tabela de Factos:
  • Contém as mediadas do negócio – Métricas;
  • Os factos considerados mais úteis são os numéricos e aditivos;
  • Apenas se acrescenta algo à tabela após um acontecimento (e.g. venda de produtos);
  • Pode ser extremamente esparsa.

Enquanto que as tabelas de Dimensão, concluímos que:

  • Em regra, são desnormalizadas;
  • Constituem pontos de entradas no DW;
  • Identificam e descrevem os dados textuais do negócio;
  • Guardam os atributos do negócio, que poderão ser bastantes e que poderão servir para restringir consultas;
  • Cada atributo referencia a dimensão em causa.

Um Exemplo bastante prático e corrente dos nossos dias, para representar Modelos Dimensionais, é a utilização das Pivot Tables do Excel, em que temos os nossos dados flat (dado numa matriz – linhas e colunas) e seleccionamos e construímos a PivotTable:

1 - Dados flat
2 - Pivot Table
Após construída, obtemos a representação de um Cubo, em que podemos fazer drag dos nossos Factos, com o propósito de obter as combinações e os resultados desejados.

1 comentário:

Maria Joana Anselmo Eusébio disse...

Olá Pedro,

Gostei! Estruturaste de forma perceptiva os conceitos relacionados com este tema! Aprendi um pouco mais ao ler ao teu blog! Tem que ser aos poucos, pois são tantos os Blogs, por isso é que só agora li o teu! Muitas vezes dei comigo a rir, enquanto li o teu blog, agradável de ler portanto! Parabéns!

Beijos!