mod multidimensional 1p

Post on 07-Aug-2015

108 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Stanley Robson de Medeiros Oliveira

������������� ��� ��������� �������

������������ ��������� ���������������

���������������������

� Conceitos básicos sobre:

� Fatos, dimensões e medidas.

� A visualização de um modelo multidimensional.

� O modelo STAR (estrela).

� O modelo Snowflake (floco de neve).

� Estudo de caso com vendas de produtos.

������������ ��������� ���������������

�����������������

� Em vários aspectos, a modelagem dimensional (MD) é mais simples, mais expressiva e mais fácil de entender que a modelagem relacional (MR).

� MD é uma técnica de concepção e visualização de um modelo de dados de um conjunto de medidas que descrevem aspectos comuns de negócios.

� MD é utilizada para sumarizar dados e apresentá-los em visões que suportem análise desses dados.

� Um modelo multidimensional é formado por três elementos:

� Fatos, dimensões e medidas.

������������ ��������� ���������������

�����

� Um fato é uma coleção de itens de dados composta de medidas e de contexto.� O valor total de vendas, no último trimestre, aumentou em 15%.

� O consumo de bebidas alcóolicas aumentou, em SP, de 98 a 99.

� Os índices de criminalidade aumentaram no ano atual 50% sobre os últimos dois anos.

� Um fato é tudo aquilo que reflete a evolução dos negócios do dia a dia de uma organização.

� A característica básica de um fato é que ele é representado por valores numéricos.

� Um fato é evolutivo; muda suas medidas com o tempo.

������������ ��������� ���������������

���������� Um fato é implementado em tabelas denominadas “tabelas de

fatos” (fact tables).

� Fato: “Os índices de criminalidade aumentaram no ano atual 50% sobre os últimos dois anos”.

1019075Furtos em residências

332250243Furtos de veículos

69242Estupros

1677789Assassinatos

158109123Assalto à mão armada

200420032002Ocorrência

Exemplo de Tabela de Fato

����������� ��������� ���������������

!�����"��

� São os elementos que participam de um fato (assunto de negócio).

� São as possíveis formas de visualizar os dados, ou seja, são os “por” dos dados:� Exemplo: “por mês”, “por país”, “por produto”.

� As dimensões determinam o contexto de um assunto de negócios.

� Exemplo: As dimensões de um Data Warehouse que analise as vendas de produtos são:� Tempo, localização, clientes, vendedores.

#����������� ��������� ���������������

��$�����������!������

� Uma dimensão pode conter muitos membros.

� Um membro de uma dimensão é um nome utilizado para determinar a posição de um itemde dado.

� Exemplo:

� Mês, trimestre e ano são membros da dimensão tempo.

� Cidade, estado e região são membros da dimensão localização.

%����������� ��������� ���������������

��$�����������!����������

� Hierarquia de uma dimensão é uma classificação de dados dentro de uma dimensão.

Ano

Trimestre Trimestre

Mês Mês

Dia ... ... ...

... ...

Hierarquia 1

Semana

Dia Dia

Hierarquia 2

&����������� ��������� ���������������

'�������!����������

� Quando analisamos compras, aplicamos o princípio dos quatro pontos cardeais:

� Uma estrela no centro representando um fato;

� As pontas representando as dimensões.

Elementos participantes de uma compra:

• Quando foi realizada a compra?

• Onde foi realizada a compra?

• Quem realizou a compra?

• O que foi comprado?

Compra

Onde?

Quem?

Quando?

O quê?

()����������� ��������� ���������������

�������*+����,���-

� São os atributos numéricos que representam um fato.

� Exemplo de medidas (métricas):� O valor em reais de vendas;� O número de unidades de produtos vendidas;� A quantidade em estoque;� O custo de venda;� Percentagem de lucro, etc.

� As medidas se classificam em três tipos de valores:� Aditivos, semi-aditivos e não-aditivos.

((����������� ��������� ���������������

�������*+����,���-����

� Definir as medidas das tabelas-fatos, observando os valores:

� Aditivos: Quando os valores são passíveis de serem somadosem todas as dimensões, como por exemplo, valor-vendido ou valor-custo.

� Semi-aditivos: quando a soma tiver sentido somente numa dimensão como, por exemplo, quantidade-vendida.

� Não-aditivos: quando um determinado valor, não puder ser somado em qualquer dimensão.

� Exemplo: o valor de porcentagem de lucro, ((valor de venda-custo)/valor-venda) ou qualquer outro tipo de relação/razão entre medidas.

������������� ����� ���������� �������

Stanley Robson de M. Oliveira

(������������ ��������� ���������������

� O caminho mais popular para visualizar um modelo dimensional é o desenho de um cubo.

Campinas

Americana

Niterói

Campos

SP

RJ

Estado Cidade

Dimensão LocalizaçãoHierarquia de dimensão

Membros dedimensão

1101 1102 2001 2002

Celular Pager

Medidas

Dimensão tempo

Modelo de produto

Produto

Hierarquiada dimensão

.�������+�����/�0����������0��������$�

(������������ ��������� ���������������

� A medida (volume de venda) é determinado pela combinação de três dimensões: localização, produto etempo.

� As dimensões localização e produto possuem dois níveis de hierarquia.

� A dimensão tempo teria os números dos anos de venda, tais como 2003, 2004, 2005 e 2006.

� Cada subcubo possui o valor da medida de quantidade de venda.

� Exemplo: em um período específico, na cidade de Campinas, estado de SP, foram vendidos 11.000 telefones do modelo 1101.

.�������+�����/�0����������0��������$�

(������������ ��������� ���������������

1$���,�"�����0��������

� A metáfora denominada CUBO é apenas uma aproximação da forma como os dados estão organizados.

� A razão de se utilizar um cubo é para transmitir a idéia de múltiplas dimensões.

� O modelo tridimensional é representado por um cubo, mas um modelo multidimensional pode ter mais de três dimensões – hipercubo.

� Visualizar graficamente um hipercubo é muito difícil, desta forma utiliza-se a referência a cubo para qualquer modelo multidimensional.

( ����������� ��������� ���������������

'���������������$�

� Imagine você analisando um cubo.� Você fatia os dados e as dimensões que quiser analisar,

observar ou estudar.

(#����������� ��������� ���������������

'���������������$��2

� Exemplo: analisar as vendas totais, classificadas por região.

� Observe que temos somente uma dimensão: Região.

$ 1.732,00Centro-Oeste

$ 5.000,00Sudeste

$ 2.350,00Nordeste

$ 11.472,00Total de Vendas

$ 1.890,00Norte

$ 1.500,00Sul

VendaRegião

Tabela de venda (fato) por região

(%����������� ��������� ���������������

'���������������$��2� Digamos que queremos ver os dados de venda (fato) por

região, porém dividido em trimestres de negócio.

� Observe que a dimensão Tempo foi acrescentada.

$ 500,003

$ 750,001

$ 800,002

4

4

3

2

1

Trimestre

Sudeste

$ 300,00

$ 300,00

$ 250,00

$ 700,00

$ 250,00

Sul

VendaRegião

(&����������� ��������� ���������������

'���������������$��2� Vamos acrescentar outra dimensão: Grupo de Produto.

4

$ 200,00Enlatados

$ 225,00Cereais

Cereais

Enlatados

Cereais

Enlatados

Cereais

Enlatados

Grupo de Produto

$ 25,00

$ 500,00

3

2

1

Trimestre

$ 300,00

$ 100,00

$ 50,00

$ 200,00

Sul

VendaRegião

�)����������� ��������� ���������������

34���5����

1. Explique porque o CUBO é uma das maneiras mais populares para visualizar o modelo de dados multidimensional.

2. É possível expressar o modelo multidimensional em mais de três dimensões? Explique.

3. Na análise de um cubo, qual é o impacto causado na tabela de fatos quando adicionamos uma dimensão?

��� ������������ ��

DimensãoTempo

DimensãoLocal

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

������������� ��������� ���������������

������3������

� Star schema é o termo comum para designação de modelos de dados multidimensionais.

� Como o termo esquema nos dá uma idéia de modelo físico, o mais usual é denominarmos de modelo estrela.

� O modelo estrela é a estrutura básica de um modelo de dados multidimensional.

� A composição do modelo estrela é a seguinte:

� Entidade central, denominada fato (fact table);

� Um conjunto de entidades menores denominadas dimensões.

� Cada dimensão é representada por uma tabela.

������������� ��������� ���������������

������3����������

DimensãoTempo

DimensãoLocalidade

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

� Exemplo de um modelo estrela para o fato: vendas.

������������� ��������� ���������������

������3����������� O relacionamento entre a entidade fato e cada dimensão é um

relacionamento de um para muitos, no sentido da dimensãopara o fato.

DimensãoTempo

DimensãoLocalidade

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

11 N N

NN

N

1 1

1

������������� ��������� ���������������

������6��78��9��*���������:�,�-� O modelo snowflake é o resultado da decomposição

de uma ou mais dimensões que possuem hierarquias entre seus membros.

DimensãoTempo

DimensãoRegião

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

DimensãoEstado

DimensãoCidade

� ����������� ��������� ���������������

������6��78��9��*���������:�,�-����

� Nós podemos definir relacionamentos muitos para umentre os membros de uma dimensão, formando uma hierarquia por meio desses relacionamentos.

� O modelo snowflake é o resultado da aplicação da terceira forma normal sobre as entidades dimensão.

� Esse modelo é de fácil entendimento p/ desenvolvedores de sistemas OLTP, pois aplica as formas normais como em um projeto relacional.

� Os desenvolvedores freqüentemente elegem esse modelo, pois como ele é normalizado, evita redundâncias em uma tabela.

�#����������� ��������� ���������������

� Elabore um Data Mart, com dados de vendas de uma loja de calçados, que permita a um analista avaliar a evolução de vendas e o perfil de compra dos clientes, nos últimos 5 anos. Para esse problema, pede-se:

a) Considere, pelo menos, 5 dimensões.

b) Esboce e modelo estrela (modelo lógico) para esse Data Mart.

c) Esboce o modelo snowflake para esse Data Mart(expandir as dimensões Local e Produto).

d) Esboce o modelo físico para esse Data Mart.

e) Liste o esquema das tabelas do modelo físico.

.��6����������+����������������

�%����������� ��������� ���������������

a) Dimensões: Tempo, Cliente, Vendedor, Produto e Local.

b) Modelo estrela:Dimensão

Tempo

DimensãoLocal

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

.��6����������+����������������

�&����������� ��������� ���������������

c) Modelo snowflake (floco de neve) – dimensões local e produto foram expandidas .

DimensãoTempo

DimensãoRegião

DimensãoTipo Produto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

DimensãoEstado

DimensãoCidade

DimensãoProduto

.��6����������+����������������

�)����������� ��������� ���������������

d) Modelo físico (nível de implementação).

Cod_TempoCod_LocalCod_ProdutoCod_VendedorCod_Cliente

Qtde_ProdutoTotal_Venda

VendasCod_Tempo

AnoTrimestreMesData

Cod_Local

RegiaoEstadoCidade

Tempo

Local

Cod_Vendedor

Nome_Vendedor

Vendedor

Cod_Cliente

Nome_Cliente

Cliente

Cod_Produto

Tipo_ProdutoNome_Produto

Produto

.��6����������+����������������

�(����������� ��������� ���������������

e) Esquema das tabelas:

Tempo (Cod_Tempo, Ano, Trimestre, Mes, Data)

Local (Cod_Local, Regiao, Estado, Cidade)

Cliente (Cod_Cliente, Nome_Cliente)

Produto (Cod_Produto, Tipo_Produto, Nome_Produto)

Vendedor (Cod_Vendedor, Nome_Vendedor)

Vendas (Cod_Tempo, Cod_Cidade, Cod_Cliente, Cod_Produto, Cod_Vendedor, Qtde_Produto, Total_Venda)

.��6����������+����������������

��� ��� �� ���������������� ����

Stanley Robson de M. Oliveira

������������� ��������� ���������������

���������0��������

� Modelagem de dados de sistemas OLTP é diferente da utilizada para Data Warehouse.

� Problemas da modelagem de dados de um DWusando a teoria relacional (Sistemas OLTP):

� Complexidade muito alta para realizar consultas ad hoc;

� Modelos relacionais respeitam a 3a. Forma Normal, mas não respondem com rapidez consultas típicas de apoio à decisão;

� Consultas de apoio à decisão requerem cinco ou mais “joins”.

������������� ��������� ���������������

���������/����������4�!����������

� No modelo relacional os dados são muito detalhados, enquanto no dimensional os dados são consolidados.

� Um modelo relacional nem sempre é indicado para sistemas de apoio à decisão (complexidade de queries).

� A modelagem dimensional estrutura os dados de forma diferente para que as consultas sejam otimizadas.

� A modelagem dimensional é um processo top-down: primeiro são identificados os processos empresariais que serão a base para a criação das tabelas de fatos.

� Um DW podem ter várias tabelas de fatos, cada uma representando um processo diferente dentro da empresa, constituindo os Data Marts.

������������� ��������� ���������������

�������0;��� ���������!����������

� Definir a área de negócios: prioridade de negócios, percepção de mercado, comportamento do cliente.

� Definir processo(s) dentro da área de negócios.

� Definir a granularidade desejada para os dados do processo, considerando os volumes e dificuldades de se obter o nível desejado.

� Definir os atributos e a hierarquia das dimensões, considerando hierarquias múltiplas.

� Definir as medidas das tabelas-fatos, observando os valores aditivos, semi-aditivos e não aditivos.

� ����������� ��������� ���������������

!�����0������ ���������!����������

� Use um modelo de dados convencional MER como ponto de partida. Isso facilitará a modelagem dimensional.

� Observe os relacionamentos 1:N existentes. Eles podem sugerir dimensões.

� Observe entidades fortes. Elas também podem sugerir dimensões.

� Observe os relacionamentos M:N. Na sua interseção pode haver valores numéricos; isso sugere Fatos.

� Analise a relação de hierarquias entre atributos da dimensão. Atente para relacionamentos M:N entre eles. Isso pode definir granularidade.

�#����������� ��������� ���������������

6�����"���0����<������

� Conceptual Design of Data Warehouses from E/R Schemes, Matteo Golfarelli, Dario Maio, Stefano Rizzi, Proceedings of the Hawaii International Conference On System Sciences, 1998.

� Designing the Data Warehouse: Key Steps and Crucial Issues, Stefano Rizzi, Journal of Computer Science and Information Management, Vol. 2, N. 3, 1999.

� Introdução aos Conceitos de Modelagem Multidimensional Aplicados a Data Warehouses, Fábio Bahia Andrade, Luciano Diniz Guerra Santiago, 2003.

�%����������� ��������� ���������������

/�8��=������0������������� The Data Warehouse Lifecycle Toolkit, Ralph Kimball et al.,

John Wiley & Sons, 2a. Edição, 2003.

� The Data Warehouse Toolkit, Ralph Kimball, John Wiley & Sons, 1996. Obs: Existe tradução para o Português.

� Essential Oracle8i Data Warehousing, Gary Dodge & Tim Gorman, John Wiley & Sons, 2000.

� Data Warehousing and Business Intelligence for E-Commerce, Alan R. Simon, Steven L. Shaffer, Morgan Kaufmann Publishers, 2001

� Tecnologia e Projeto de Data Warehouse: uma visão multidimensional, Felipe Nery R. Machado. São Paulo: Érica, 2004. 318p.

� Database Management Systems, RAMAKRISHNAN, R.; GEHRKE, J., 3a. Edição, McGraw-Hill, 2004.

top related