38
Stanley Robson de Medeiros Oliveira

Mod Multidimensional 1p

Embed Size (px)

Citation preview

Page 1: Mod Multidimensional 1p

Stanley Robson de Medeiros Oliveira

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

Page 2: Mod Multidimensional 1p

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

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

� 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.

Page 3: Mod Multidimensional 1p

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

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

� 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.

Page 4: Mod Multidimensional 1p

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

�����

� 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.

Page 5: Mod Multidimensional 1p

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

���������� 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

Page 6: Mod Multidimensional 1p

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

!�����"��

� 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.

Page 7: Mod Multidimensional 1p

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

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

� 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.

Page 8: Mod Multidimensional 1p

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

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

� 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

Page 9: Mod Multidimensional 1p

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

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

� 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ê?

Page 10: Mod Multidimensional 1p

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

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

� 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.

Page 11: Mod Multidimensional 1p

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

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

� 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.

Page 12: Mod Multidimensional 1p

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

Stanley Robson de M. Oliveira

Page 13: Mod Multidimensional 1p

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

� 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��������$�

Page 14: Mod Multidimensional 1p

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

� 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��������$�

Page 15: Mod Multidimensional 1p

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

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.

Page 16: Mod Multidimensional 1p

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

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

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

observar ou estudar.

Page 17: Mod Multidimensional 1p

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

'���������������$��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

Page 18: Mod Multidimensional 1p

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

'���������������$��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

Page 19: Mod Multidimensional 1p

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

'���������������$��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

Page 20: Mod Multidimensional 1p

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

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?

Page 21: Mod Multidimensional 1p

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

DimensãoTempo

DimensãoLocal

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

Page 22: Mod Multidimensional 1p

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

������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.

Page 23: Mod Multidimensional 1p

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

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

DimensãoTempo

DimensãoLocalidade

DimensãoProduto

DimensãoVendedor

DimensãoCliente

Fatos deVendas

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

Page 24: Mod Multidimensional 1p

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

������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

Page 25: Mod Multidimensional 1p

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

������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

Page 26: Mod Multidimensional 1p

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

������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.

Page 27: Mod Multidimensional 1p

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

� 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����������+����������������

Page 28: Mod Multidimensional 1p

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

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����������+����������������

Page 29: Mod Multidimensional 1p

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

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����������+����������������

Page 30: Mod Multidimensional 1p

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

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����������+����������������

Page 31: Mod Multidimensional 1p

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

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����������+����������������

Page 32: Mod Multidimensional 1p

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

Stanley Robson de M. Oliveira

Page 33: Mod Multidimensional 1p

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

���������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”.

Page 34: Mod Multidimensional 1p

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

���������/����������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.

Page 35: Mod Multidimensional 1p

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

�������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.

Page 36: Mod Multidimensional 1p

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

!�����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.

Page 37: Mod Multidimensional 1p

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

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.

Page 38: Mod Multidimensional 1p

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

/�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.