CEA462 – Sistemas de Apoio à Decisão – Slide 1 Universidade Federal de Ouro Preto Data Warehousing Data Warehousing
Jan 03, 2016
CEA462 – Sistemas de Apoio à Decisão – Slide 1
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Data WarehousingData WarehousingData WarehousingData Warehousing
CEA462 – Sistemas de Apoio à Decisão – Slide 2
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Levantamento de Requisitos
Execução da Modelagem Modelagem Conceitual (Modelo Entidade-Relacionamento) Modelagem Lógica (Modelo Relacional) Modelagem Física
Modelo
Conceitual
Modelo
LógicoModelo
Físico
B.D.Mundo
Real
Processo de Modelagem
CEA462 – Sistemas de Apoio à Decisão – Slide 3
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelo Entidade-RelacionamentoModelo Entidade-Relacionamento
É um modelo de dados de alto nível. Possui dois elementos principais: Entidades e Relacionamentos.
Aluno
Professor
Disciplina
Ministra
Orientado
Cursa
Monitor
matrnome
cr
cod nomesemestre
matrnometítulo Esquema Conceitual MER
1 N1
11
MN
Nnota
CEA462 – Sistemas de Apoio à Decisão – Slide 4
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
EntidadeEntidade
Aluno
Professor
Disciplina
Ministra
Orientado
Cursa
Monitor
matrnome
cr
cod nomesemestre
matrnometítulo
1 N1
11
MN
Nnota
•(A010, João, 9,5)•(A020, Maria, 8,1)•(A030, José, 4,7)•(A040, Ana, 9,8)
•(D01, BD, 2001.2)•(D02, BD, 2002.1)•(D03, Cálculo,2002.1)
•(P010, Alexandre, D.Sc.)•(P020, Lygia, D.Sc.)•(P030, Branca, M.Sc.)
Chave: atributo (ou conjunto de atributos) que identifica uma entidade, ou seja, não há valores repetidos deste atributo na entidade.O atributo chave aparece sublinhado.
CEA462 – Sistemas de Apoio à Decisão – Slide 5
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
RelacionamentoRelacionamento
Aluno
Professor
Disciplina
Ministra
Orientado
Cursa
Monitor
matrnome
cr
cod nomesemestre
matrnometítulo
1 N1
11
MN
Nnota
•(A010, D01, 9,0)•(A010, D02, ---)•(A020, D03, 4,3)•(A030, D03, 5,8)
•(A020, D01)•(A030, D02)•(A040, D03)
•(P010, D01)•(P010, D02)•(P020, D03)
•(P010, A040)•(P010, A030)•(P020, A010)
CEA462 – Sistemas de Apoio à Decisão – Slide 6
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Relacionamento TernárioRelacionamento Ternário
Fornecedor PeçaFornece
O grau do relacionamento representa o número de entidades participantes
Projeto
Grau 3 (ternário)
N N
N Um determinado fornecedor pode fornecer uma determinada peça para ser utilizada em vários projetos.
CEA462 – Sistemas de Apoio à Decisão – Slide 7
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelo RelacionalModelo Relacional
É um modelo de dados de implementação. Neste modelo, os dados são organizados em tabelas (relações).
S S# Nome Status Cidade S1 Smith 20 Londres S2 Jones 10 Paris S3 Blake 30 Paris S4 Clark 20 Londres S5 Adams 30 Atenas
SP S# P# Qtd S1 P1 300 S1 P2 200 S1 P3 400 S1 P4 200 S1 P5 100 S1 P6 100 S2 P1 300 S2 P2 400 S3 P2 200 S4 P2 --- S4 P4 300 S4 P5 400
P P# Nome Cor Peso Cidade P1 Porca Verm 12 Londres P2 Trinco Verde 17 Paris P3 Parafuso Azul 17 Roma P4 Parafuso Verm 14 Londres P5 Prego Azul 12 Paris P6 Rosca Verm 19 London
CEA462 – Sistemas de Apoio à Decisão – Slide 8
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
DomínioDomínio
S S# Nome Status Cidade S1 Smith 20 Londres S2 Jones 10 Paris S3 Blake 30 Paris S4 Clark 20 Londres S5 Adams 30 Atenas
Conjunto de valores que um determinado atributo pode assumir.
• S5
• S4
• S3
• S2• S1
• S8
• S7• S6
•Blake•Clark
•Jones
•Smith•Anne
•Joe
•Adams
• 30• 25• 20
• 15• 10• 5
• 35• 40
•Roma
•Atenas•Rio
•Paris •Londres
•Madri
D1D2 D3 D4
•Rio
CEA462 – Sistemas de Apoio à Decisão – Slide 9
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Relação (Tabela)Relação (Tabela)
S S# Nome Status Cidade S1 Smith 20 Londres S2 Jones 10 --- S3 Blake --- Paris S4 Clark 20 Londres S5 Adams 30 Atenas
Uma relação (Tabela), definida sobre os domínios D1, D2, ...Dn, éum conjunto de tuplas. Cada tupla é uma lista de valores <v1,v2,...,vn>, tal que cada valor vi é um elemento do domínio Di, ou é o valor nulo.
tuplas (linhas)
atributos (colunas)
CEA462 – Sistemas de Apoio à Decisão – Slide 10
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Grau e CardinalidadeGrau e Cardinalidade
S S# Nome Status Cidade S1 Smith 20 Londres S2 Jones 10 --- S3 Blake --- Paris S4 Clark 20 Londres S5 Adams 30 Atenas
O grau de uma relação R é o número de atributos de R. A cardinalidade de uma relação R é o número de tuplas de R.
Cardinalidade 5
Grau 4
CEA462 – Sistemas de Apoio à Decisão – Slide 11
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
ChaveChave
Uma chave é um atributo (ou conjunto de atributos) que identifica univocamente uma relação. Ou seja, um atributo chave não apresenta valores duplicados. As chaves são representadas sublinhadas.
S S# Nome Status Cidade S1 Smith 20 Londres S2 Jones 10 Paris S3 Blake 30 Paris S4 Clark 20 Londres S5 Adams 30 Atenas
SP S# P# Qtd S1 P1 300 S1 P2 200 S1 P3 400 S1 P4 200 S1 P5 100 S1 P6 100 S2 P1 300 S2 P2 400 S3 P2 200 S4 P2 --- S4 P4 300 S4 P5 400
P P# Nome Cor Peso Cidade
P1 Porca Verm 12 Londres P2 Trinco Verde 17 Paris P3 Parafuso Azul 17 Roma P4 Parafuso Verm 14 Londres P5 Prego Azul 12 Paris P6 Rosca Verm 19 London
CEA462 – Sistemas de Apoio à Decisão – Slide 12
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Chave Primária e Chave SecundáriaChave Primária e Chave Secundária
As chaves de uma relação, quando há mais de uma, são chamadas chaves candidatas. Uma delas, a principal, é eleita a chave primária e as outras, se houver, são chamadas chaves secundárias.
Chaves cadidatas de P: (P#), (Nome,Cor)Chave primária de P: (P#)Chave secundária de P: (Nome,Cor)
P P# Nome Cor Peso Cidade P1 Porca Verm 12 Londres P2 Trinco Verde 17 Paris P3 Parafuso Azul 17 Roma P4 Parafuso Verm 14 Londres P5 Prego Azul --- Paris P6 Rosca --- 19 London
1 2
CEA462 – Sistemas de Apoio à Decisão – Slide 13
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Chave EstrangeiraChave Estrangeira
Uma chave estrangeira de uma relação R é um atributo (ou conjunto de atributos) que referencia a chave primária de uma (outra) relação S.
Desta forma, para qualquer tupla de R, o valor da chave estrangeira deve ser igual ao valor da chave primária de alguma tupla da relação S referenciada, ou deve ser o valor nulo. (Integridade Referencial)
Chaves estrangeiras de SP: (S#) referenciando a relação S e(P#) referenciando a relação P.
P P# Nome Cor Peso Cidade
S S# Nome Status Cidade
SP S# P# Qtd
CEA462 – Sistemas de Apoio à Decisão – Slide 14
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Mapeamento Lógico-RelacionalMapeamento Lógico-Relacional
P P# Nome Cor Peso Cidade
S S# Nome Status Cidade
SP S# P# Qtd
N MFornecedor(S)
Fornecimento(SP)
Peça(P)
Entrada: Esquema Conceitual (MER)
Saída: Esquema Lógico (Relacional)
Diagrama Relacional
CEA462 – Sistemas de Apoio à Decisão – Slide 15
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
EntidadeEntidade
Aluno Aluno matr CPF nome end CR
matr CPF nome
end
CR
Disciplina
cod nome semestre
Professor
matr nome título
Disciplina cod nome semestre
Professor matr nome título
CEA462 – Sistemas de Apoio à Decisão – Slide 16
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Relacionamento N:1Relacionamento N:1
1 NProfessor DisciplinaMinistra
Professor matr nome título
Disciplina cod nome semestre matr-prof
CEA462 – Sistemas de Apoio à Decisão – Slide 17
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Relacionamento N:MRelacionamento N:M
N MAluno DisciplinaCursa
Aluno matr CPF nome end CR
Disciplina cod nome semestre
Cursa matr cod nota
nota
CEA462 – Sistemas de Apoio à Decisão – Slide 18
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Relacionamento N:M (Ternário)Relacionamento N:M (Ternário)
N NFornecedor PeçaFornece
ProjetoN
S# Nome Status Cidade
P# Nome Cor Peso
Id# Nome Duração
S# Id# P# Quantidade
quantidade
PeçaFornecedor
Projeto
Fornece
CEA462 – Sistemas de Apoio à Decisão – Slide 19
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Algumas características importantes do Modelo Entidade e Relacionamento (MER) Tradicional:
• Foco em aplicações transacionais;
• Foco no armazenamento “não-histórico”, momentâneo, da informação;
• Acesso individual e pontual aos dados;
• Tende a um grande número de tabelas;
• Podem ocorrer muitas tabelas semelhantes e diversas tabelas pouco povoadas;
• Eficiente apenas para consultas simples e diretas.
CEA462 – Sistemas de Apoio à Decisão – Slide 20
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Algumas necessidades importantes em um ambiente de Data Warehouse:
• Foco em aplicações gerenciais;
• Análise histórica das informações;
• Visão ampla das informações (sumarizações, cruzamentos...);
• Visualizar os dados sobre diferentes perspectivas e flexibilidade no suporte a análises -> consultas complexas.
Conclusão: para implementar um Data Warehouse, necessita-se de um novo modelo, diferente do MER tradicional.
CEA462 – Sistemas de Apoio à Decisão – Slide 21
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
A idéia fundamental da modelagem multidimensional é representar os tipos de dados de negócio por uma estrutura conhecida como cubo de dados, onde suas células contêm valores de medidas, enquanto os lados do mesmo definem as dimensões dos dados.
Obs: Normalmente também refere-se como cubo de dados ou simplesmente cubo à modelagem multidimensional com mais de três dimensões, no entanto, o termo técnico para tal estrutura é hipercubo.
CEA462 – Sistemas de Apoio à Decisão – Slide 22
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
• Facilita o entendimento e a visualização das informações utilizadas pelo suporte à decisão
• Estrutura mais intuitiva para o processamento analítico
• Dados agrupados por assunto (vendas)
CEA462 – Sistemas de Apoio à Decisão – Slide 23
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Visão Relacional X Visão Multidimensional
Visão Relacional
Volume de vendas de uma loja de instrumentos musicais por instrumento e por estado Instrumento Estado Volume Vendido Violão MG 140 Violão RJ 100 Violão SP 150 Guitarra MG 140 Guitarra RJ 120 Guitarra SP 80 Bateria MG 30 Bateria RJ 20 Bateria SP 50
CEA462 – Sistemas de Apoio à Decisão – Slide 24
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Visão Relacional X Visão Multidimensional
Visão Multidimensional
Volume de vendas de uma loja de instrumentos musicais por instrumento e por estado
100 150140
120 80140
20 5030
Estado
RJ SPMG
Violão
Guitarra
Bateria
Instrumento
Volume de Vendas
CEA462 – Sistemas de Apoio à Decisão – Slide 25
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Visão Relacional X Visão Multidimensional
Visão RelacionalVolume de vendas por instrumento, por estado e por ano
Instrumento Estado Ano Volume Vendido
Violão MG 1997 30Violão MG 1998 60Violão MG 1999 50Violão RJ 1997 10Violão RJ 1998 30Violão RJ 1999 60Violão SP 1997 50Violão SP 1998 50Violão SP 1999 50Guitarra MG 1997 40Guitarra MG 1998 30Guitarra MG 1999 70Guitarra RJ 1997 40Guitarra RJ 1998 50Guitarra RJ 1999 30Guitarra SP 1997 60...
CEA462 – Sistemas de Apoio à Decisão – Slide 26
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Visão Relacional X Visão Multidimensional
Visão Multidimensional Volume de vendas por instrumento, por estado e por ano
Guitarra
Violão
Bateria
MG RJ SP1997
19981999
Estado
Ano
Instrumento
Volume de Vendas
CEA462 – Sistemas de Apoio à Decisão – Slide 27
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Hipercubo
Guitarra
Violão
Bateria
MG RJ SP1997
19981999
Guitarra
Violão
Bateria
MG RJ SP1997
19981999
Volume de Vendas
Importado Nacional
CEA462 – Sistemas de Apoio à Decisão – Slide 28
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Elementos básicos:
Fatos: é tudo aquilo que pode ser representado por um valor aditivo, ou seja, por meio de valores numéricos. Este conjunto de valores numéricos é denominado de métricas ou medidas.
Ex.: Vendas.
Dimensões: determinam o contexto no qual o negócio será analisado.
Ex.: As dimensões do fato venda de produtos poderiam ser o Tempo, a Localização, os Clientes e os Vendedores
Medidas (variáveis): atributos numéricos que representam um fato
Ex.: Valor em reais das vendas, o número de unidades vendidas, a quantidade em estoque, o custo de venda etc.
CEA462 – Sistemas de Apoio à Decisão – Slide 29
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Star Schema:
• Forma de dispor as tabelas do banco para simular um banco de dados multidimensional;
• Presença de dados redundantes para se obter um melhor desempenho de consultas;
• Composto por uma tabela dominante, chamada tabela de fatos, rodeada de tabelas auxiliares, chamadas tabelas de dimensão;
• A tabela de fatos conecta-se às demais por múltiplas junções e as tabelas de dimensões se conectam com apenas uma junção à tabela de fatos.
CEA462 – Sistemas de Apoio à Decisão – Slide 30
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
EstadosMG
RJSP
Produtos
Laranja
Banana
Maçã
Goiaba
Ano 9796 98 99
Vendas(em toneladas)
50
Fato (assunto) Dimensões
CEA462 – Sistemas de Apoio à Decisão – Slide 31
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Star Schema:
CEA462 – Sistemas de Apoio à Decisão – Slide 32
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Star Schema:
• As tabelas de dimensões são desnormalizadas para aumentar o desempenho da consulta;
• A tabela de fatos armazena grande quantidade de dados históricos em função do tempo, obtidos a partir da intersecção de todas as dimensões da estrela;
• A dimensão tempo é sempre integrante da chave primária da tabela de fatos;
• Os indicadores de desempenho (medidas) do negócio são armazenados na tabela de fatos.
CEA462 – Sistemas de Apoio à Decisão – Slide 33
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Star Schema – Exemplo de tabela de dimensão (Produto):
Id do Produto Descrição Preço Tipo
101 Espaguete 10 Massa
102 Hamburguer 5 Carne
103 Talharim 15 Massa
104 Peito de Frango 20 Carne
CEA462 – Sistemas de Apoio à Decisão – Slide 34
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Star Schema – Exemplo de tabela de fatos (Vendas):
Id do Tempo Id do Produto Id do Funcionário
Unidades Vendidas
Valor de Venda
991020 101 200 10 500
991021 101 200 13 650
991022 101 200 15 700
991023 101 200 20 1000
CEA462 – Sistemas de Apoio à Decisão – Slide 35
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Membros da uma Dimensão: são os elementos das dimensões
Ex.: Todas as ocorrências de cidades, estados e regiões formam a dimensão geográfica, todas as ocorrências de ano, trimestre e mês formam a dimensão tempo.
Hierarquia de uma Dimensão: a hierarquia existente entre os membros de uma dimensão
Ex.:
DimensãoTempo
1996
1997
1o Trimestre
2o Trimestre
3o Trimestre
4o Trimestre
Janeiro
Fevereiro
Ano
Trimestre
Mês
CEA462 – Sistemas de Apoio à Decisão – Slide 36
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Visão Multidimensional
11 21 38 41
22 43 35 41
41 45 56 33
42 41 43 39 Dimensão Tempo
1101 1102 2001 2002
Celular Pager
SP
Rio
Campinas
Americana
Niterói
Campos
Medidas
Modelo do Produto
Produto
Hierarquia da Dimensão
Membros da Dimensão
Dimensão LocalizaçãoHierarquia da Dimensão
CEA462 – Sistemas de Apoio à Decisão – Slide 37
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensões:
• Representam entidades que evoluem no tempo, como pessoas que mudam de endereço, mudanças na descrição e/ou formulação de um produto etc.;
• Não se deve criar dependências entre as demais dimensões e a dimensão tempo, pois seria um passo em direção a uma estrutura altamente relacionada, o que traria perda de desempenho em consultas;
• Pode-se tratar estas modificações de três formas diferentes, de acordo com o tipo da dimensão.
Obs: recomenda-se fortemente o uso de chaves artificiais.
CEA462 – Sistemas de Apoio à Decisão – Slide 38
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 1:
• O histórico não é relevante – as substituições de valores podem ser feitas diretamente no registro em questão.
Ex: Cris - tinha estado civil solteira até 25/06/2010.Casou-se em 25/06/2010. Como refletir esta “evolução” no DW ?
Nenhuma chave é afetada no banco de dados Muito fácil de implementar mas os dados históricos ficam inconsistentes Duas questões básicas devem ser feitas antes de decidir por esta solução:
Qual a importância desse valor para as análises do usuário final?Qual a importância de se rastrear o histórico ?
Ex: Cris teria seu atributo estado civil atualizado para casada
CEA462 – Sistemas de Apoio à Decisão – Slide 39
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 1:
Id do Cliente Nome Estado_Civil
101 Cris Solteira
Id do Cliente Nome Estado_Civil
101 Cris Casada
CEA462 – Sistemas de Apoio à Decisão – Slide 40
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 2: O histórico é relevante -> Inserção de um novo registro na mesma entidade dimensional, refletindo a “mudança de estado”;
Ex: Existirão dois registros de Cris na dimensão cliente. O primeiro referente ao seu estado civil até 25/06/2010 - solteira e o outro ao estado civil casada.
Na tabela de fatos vendas, o primeiro registro de Cris está vinculado as Vendas anteriores a 25/06/2010, e o segundo estará vinculado as vendas posteriores a essa data
CEA462 – Sistemas de Apoio à Decisão – Slide 41
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 2:
Id do Cliente Nome Estado_Civil Status
101 Cris Solteira Antigo
101 Cris Casada Atual
CEA462 – Sistemas de Apoio à Decisão – Slide 42
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 3 São necessários campos para armazenar:
status original do atributo dimensionalstatus atual do atributo dimensionaldata efetiva da ultima alteração do campo (status atual)
Apenas dois status podem ser rastreados: o atual e o original;
É possível fazer análises comparando com os resultados utilizando os
status original e atual
CEA462 – Sistemas de Apoio à Decisão – Slide 43
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 3 O atributo estado civil, seria renomeado para estado civil original e seriam incluídos os atributos estado civil atual e data efetiva do estado civil.
Sempre que acontecer uma mudança no estado civil de Cris, substituiremos o valor do campo estado civil atual e mudaremos a data efetiva. O campo estado civil original nunca é modificado
CEA462 – Sistemas de Apoio à Decisão – Slide 44
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 3:
Id do Cliente Nome Estado_Civil_Original Estado_Civil_Atual Data_Efetiva
101 Cris Solteira Casada 25/06/2010
CEA462 – Sistemas de Apoio à Decisão – Slide 45
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tipo 3:
Id do Cliente Nome Estado_Civil_Original Estado_Civil_Atual Data_Efetiva
101 Cris Solteira Separada ??/??/????
CEA462 – Sistemas de Apoio à Decisão – Slide 46
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensões pequenas para auxílio de desempenho:
Gerar todas combinações possíveis
“Qual o volume de vendas de livros técnicos para pós-graduados?”
CEA462 – Sistemas de Apoio à Decisão – Slide 47
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensões descaracterizadas:
É chave no BD operacional, mas não é chave de dimensão. Representa o próprio conceito.
CEA462 – Sistemas de Apoio à Decisão – Slide 48
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Dimensão Tempo:
• Procura-se armazenar descrições que não podem ser extraídas utilizando funções nativas dos SGBDs.
Id Tempo Dia Mês Ano Estação Dia Útil? Dia da Semana Semestre
99010 20 10 2003 Primavera S Segunda Segundo
99011 21 10 2003 Primavera S Terça Segundo
99012 22 10 2003 Verão S Quarta Segundo
99013 23 10 2003 Verão S Quinta Segundo
CEA462 – Sistemas de Apoio à Decisão – Slide 49
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Esquema SnowFlake (Floco de Neve)
FatoVendas
DimensãoRegião
DimensãoProduto
DimensãoVendedor
DimensãoCliente
DimensãoTempo
DimensãoEstado
DimensãoCidade
DimensãoCategoria
CEA462 – Sistemas de Apoio à Decisão – Slide 50
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Granularidade:
• É o nível de detalhe das tabelas. Quanto maior o nível de detalhe, menor o grão.
Agregação:
• É o processo de resumir, sumarizar dados granulares ou detalhados e de armazenar fisicamente as agregações na tabela de fatos ao longo de uma hierarquia.
• Gera redundância, mas agiliza processos de consultas.
CEA462 – Sistemas de Apoio à Decisão – Slide 51
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Agregação: Através do operador de agregação criam-se novas entidades contendo dados sumarizados.
Um conjunto de atributos da entidade origem é escolhido para agregar (os atributos de agregação) e um conjunto de atributos destino recebe o agrupamento (atributos de agrupamento).
Os atributos de agregação devem ser quantitativos numéricos.
CEA462 – Sistemas de Apoio à Decisão – Slide 52
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Agregação:
ItemVenda TotaisProduto
IdVenda IdProdutp
IdProduto Data
Data TotaisVenda
Qtde Media(Qtde)
ValorUnitario Média(ValorUnitário)
CEA462 – Sistemas de Apoio à Decisão – Slide 53
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem Multidimensional
Quatro passos básicos para a Modelagem Multidimensional:
1. Definir / Identificar o Fato de Negócio (subconjunto do modelo de negócio);
2. Definir a granularidade que será utilizada;
3. Definir as dimensões do Fato;
4. Definir as medidas do Fato.
CEA462 – Sistemas de Apoio à Decisão – Slide 54
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• Uma rede de restaurantes hipotética tem 50 filiais localizadas em vários estados da federação. Cada filial oferece mais de 1000 produtos diferentes nas categorias bebidas e pratos.
• A diretoria da empresa deseja analisar as vendas, os custos e os lucros obtidos.
• Promoções e festivais são utilizados para atrair clientes e potencializar as vendas.
CEA462 – Sistemas de Apoio à Decisão – Slide 55
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• A diretoria da empresa determinou que é estratégico para a tomada de decisões analisar o movimento diário de cada produto, para que possa direcionar as promoções ou festivais de acordo com os resultados das análises realizadas.
• Avaliar o movimento diário de cada produto consiste em analisar as vendas de produtos, levando em conta os preços praticados e as filiais que realizaram tais vendas.
CEA462 – Sistemas de Apoio à Decisão – Slide 56
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• Passo 1: Identificando o fato:
• O que pode ser representado por um valor aditivo, que normalmente é um indicativo de desempenho?
• O que pode ser caracterizado como um subconjunto do modelo de negócios da empresa?
Resposta: As vendas.
CEA462 – Sistemas de Apoio à Decisão – Slide 57
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• Passo 2: Definindo a granularidade das informações:
• Neste exemplo, os dados poderiam ser analisados em nível de nota fiscal no que diz respeito aos preços praticados e verificar o movimento diário de venda dos produtos por filial.
CEA462 – Sistemas de Apoio à Decisão – Slide 58
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• Passo 3: Definir as dimensões:
• Quais aspectos são relevantes para se medir o fato de acordo com as especificações executivas? Responder a perguntas como as listadas a seguir pode ajudar.
• Quem realiza as vendas? Funcionários.
• Onde as vendas são realizadas? Filiais.
• O que é vendido? Produtos.
• Quando os produtos são vendidos? Diariamente (tempo).
CEA462 – Sistemas de Apoio à Decisão – Slide 59
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• Passo 3: Definir as dimensões:
• Pode-se ainda levar em conta o objetivo da análise deste fato para incorporar uma dimensão ao mesmo.
• Neste exemplo, o objetivo é alavancar as vendas através de promoções ou festivais. Pode ser importante então incluir o histórico de promoções realizadas como um aspecto relevante do movimento de vendas da rede de restaurantes, no intuito, por exemplo, de se avaliar o impacto das promoções já realizadas em momentos passados na vendagem de determinados produtos.
CEA462 – Sistemas de Apoio à Decisão – Slide 60
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
Exemplo:
• Passo 4: Definir as medidas do fato:
• Como o desempenho de vendas pode ser medido?
• Algumas das possibilidades são volume total de vendas, unidades vendidas, custo total (para determinação de lucratividade) etc.
CEA462 – Sistemas de Apoio à Decisão – Slide 61
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Modelagem de Dados para Data Warehouse
CEA462 – Sistemas de Apoio à Decisão – Slide 62
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Exercício
Caso
Uma rede de supermercados quer analisar suas compras para fazer um planejamento da demanda por produtos.
As necessidades executivas são:
Acompanhar os contratos de negociação
Identificar oportunidades de economia
CEA462 – Sistemas de Apoio à Decisão – Slide 63
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Objetivos do Data Mart• Responder as perguntas:
•Que materiais ou produtos são comprados com mais freqüência?
•Quantos fornecedores desses produtos existem?
•Quais os preço praticados?
•Estamos comprando pelos preços negociados com nossos fornecedores?
•Como está o desempenho dos fornecedores? Qual o desempenho em relação a entrega no prazo? Há entregas atrasadas pendentes?
Exercício
CEA462 – Sistemas de Apoio à Decisão – Slide 64
Un
ive
rsid
ade
Fe
de
ral d
e O
uro
Pre
to
Exercício
Identificando Granularidade, Dimensões, Fato e Hierarquias
De acordo com a especificação apresentada, responda às seguintes perguntas:
- Qual será a granularidade dos dados para este Data Mart ?- Qual será o fato? - Quais serão as dimensões para este fato? - Quais serão as medidas necessárias para atender aos requisitos?