Modelagem Dimensional para Datawarehouses

Propaganda
Introdução à Modelagem
Dimensional para
Datawarehouses
Fernanda Baião
[email protected]
PPGI – UNIRIO
Abril 2007
1
Tópicos
„
„
„
Inteligência do Negócio
Contexto das Organizações
A tecnologia de Data Warehouse
„
„
„
Motivação e Conceitos
Objetivos e Arquitetura
Processo de Desenvolvimento do Data Warehouse
„
Projeto do Warehouse
„
Modelagem Multidimensional
2
1
Ambiente de aplicações
Adaptado de:
Carlos Barbieri
BI: Business Intelligence - Modelagem e Tecnologia
3
Inteligência do Negócio (BI)
„
“Utilização de várias fontes de
informação para se definir estratégias
de competitividade nos negócios da
empresa”
„
Problema da “inundação de informações”
„
„
„
„
“Montanhas de dados”
Busca e recuperação de informação são difíceis
Apresentação da informação
Tomadas de decisão são prejudicadas
4
2
Inteligência do Negócio
„
Desafio:
„
Definir regras e técnicas para a
apresentação adequada deste volume de
dados visando transformá-los em depósitos
estruturados de informação, independente
da sua origem
5
Contexto das Organizações
„
“2 mundos de informação diferentes”
„
„
„
Operacional (execução) x Gerencial (Planejamento
e Controle)
Objetivos distintos
Requisitos de ambientes de BD distintos
Informação
Informação
6
3
Ambientes de BD Operacionais
„
Dão suporte às funções associadas à execução do
negócio da empresa:
„
„
sistemas administrativos, de controle de estoque,
assinaturas de clientes, etc.
Tipo de processamento: OLTP
„
„
„
„
„
„
On-line transactional processing
transações pontuais (1 registro por vez)
velocidade e automação de funções “repetitivas”
atualizações e consultas em grande número
trabalha com alto nível de detalhe
situação corrente
7
Ambientes de BD Gerenciais
„
Dão suporte às atividades de tomada de decisões
gerenciais na organização
„
„
Sistemas de suporte à decisão, ferramentas de análise
Tipo de processamento: OLAP
„
„
„
„
„
„
„
„
On-line analytical processing
“Pequeno” número de consultas “variáveis”
centenas, milhares, ... de registros por consulta
Diversas fontes de dados
Diferentes perspectivas
Operações de agregação e cruzamentos
Atualização quase inexistente, apenas novas inserções
Dados históricos são relevantes
8
4
O que é um Data Warehouse
Data Warehouse
“Uma coleção de dados...
Orientados ao assunto
Integrados
Não voláteis
Variantes no tempo
... Para fornecer suporte ao processo de tomada de
decisões na organização” [Inmon, 92]
9
O que é um Data Mart
Data Mart
“Um subconjunto lógico do Data Warehouse,
geralmente visto como um data warehouse
setorial.” [Kimball]
10
5
Objetivos de um Data
Warehouse
„
„
„
„
„
Integrar dados de múltiplas fontes
Facilitar o processo de análise sem impacto para o
ambiente de dados operacionais
Obter informação de qualidade
Atender diferentes tipos de usuários finais
Ser flexível e ágil para atender novas análises
Sistema de
Apoio à Decisão
Fontes de Dados
Operacionais
DW
Ferramenta
OLAP
Sistema de
Mineração de Dados11
Arquitetura de um Ambiente
de Data Warehouse
„
„
[Han e Kamber, 2001]
Componentes
„
„
Dados Operacionais
3 camadas
„
„
„
Camada Interna: Servidor DW
Camada Intermediária: Servidor OLAP
Camada Externa: Ferramentas de acesso aos
dados
12
6
Arquitetura de um Ambiente
de Data Warehouse
Análise
Relatórios
Ferramentas
Mineração de Dados
Servidor
OLAP
DW
Extração
Limpeza
Transformações
Carga
Atualização
Metadados
Servidor
DW
Data Marts
Dados
BDs operacionais
Fontes externas
13
Processo de Desenvolvimento de DWs
„
Etapas:
„
„
„
„
„
Planejamento
Levantamento de Requisitos e Análise do
Problema
Projeto do Data Warehouse
Integração de Dados e Testes
Implantação
14
7
Projeto do Data Warehouse
„
Requisitos
„
„
„
flexibilidade e agilidade para suportar
análises não previstas
Permitir análise das medidas
disponibilizadas sob diferentes perspectivas
Abordagem utilizada:
MODELAGEM DIMENSIONAL
15
Visão multidimensional
„
Forma pela qual analistas de negócio,
gerentes e executivos analisam informações
Qual o total de
vendas do
Produto X na Região
Sudeste no mês de
janeiro ?
Como foi a distribuição
das vendas do Produto
X em todas as cidades
no ano passado?
Em quanto
aumentaram as
vendas do Produto X
durante a promoção
em abril de 2003 ?
16
8
Visão multidimensional
„
Foco no cruzamento das informações
„
„
„
„
Facilita o entendimento e visualização de
problemas típicos de suporte à decisão
Mais intuitiva para o processamento analítico
Utilizada pelas ferramentas OLAP
Qual a diferença da visão multidimensional
para a visão “tabular” do modelo relacional?
17
Visão Relacional
„
Volume de vendas para a concessionária XCar
MODEL
CITY
SALES VOLUME
MINI VAN
NEW YORK
MINI VAN
LOS ANGELES
5
MINI VAN
MADISON
4
SPORTS COUPE
NEW YORK
3
SPORTS COUPE
LOS ANGELES
5
SPORTS COUPE
MADISON
5
SEDAN
NEW YORK
4
SEDAN
LOS ANGELES
3
SEDAN
MADISON
2
6
18
9
Visão multidimensional
„
Volume de vendas para a concessionária Xcar
M
O
D
E
L
Mini Van
6
5
4
Coupe
3
5
5
Sedan
4
3
2
NY
LA
Madison
CITY
„
„
Um vetor multidimensional tem um número fixo de
dimensões e os valores são armazenados nas células
Cada dimensão consiste de um número de elementos
Acrescentando mais uma
coluna...
„
Volume de
vendas por
fornecedor
MODEL
CITY
DEALERSHIP
MINI VAN
MINI VAN
MINI VAN
MINI VAN
MINI VAN
MINI VAN
MINI VAN
MINI VAN
MINI VAN
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SPORTS COUPE
SEDAN
SEDAN
SEDAN
SEDAN
SEDAN
SEDAN
SEDAN
SEDAN
SEDAN
NEW YORK
NEW YORK
NEW YORK
LOS ANGELES
LOS ANGELES
LOS ANGELES
MADISON
MADISON
MADISON
NEW YORK
NEW YORK
NEW YORK
LOS ANGELES
LOS ANGELES
LOS ANGELES
MADISON
MADISON
MADISON
NEW YORK
NEW YORK
NEW YORK
LOS ANGELES
LOS ANGELES
LOS ANGELES
MADISON
MADISON
MADISON
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
CLYDE
GLEASON
CARR
19
VOLUME
6
6
2
3
5
5
2
4
3
2
3
2
7
5
2
4
5
1
6
4
2
1
3
4
2
2
3 20
10
Visão multidimensional
„
Volume de vendas para a concessionária Xcar
Mini Van
M
O
D
E
L
Coupe
Sedan
6
1
NY
LA
Carr
Gleason
Clyde
2
DEALERSHIP
Madison
CITY
Dados podem ser imaginados como em um “cubo”
„
metáfora visual
representação intuitiva: dimensões coexistem para todo
ponto no cubo e são independentes umas das outras 21
„
„
Adicionando Dimensões Hipercubos
„
M
O
D
E
L
Volume de vendas para a concessionária
Xcar, ao longo do tempo
Mini Van
Mini Van
Coupe
Coupe
Sedan
6
1
NY
LA
2
Carr
Gleason
Clyde
Madison
CITY
JANUARY
Sedan
Mini Van
Coupe
5
10
NY
LA
1
Carr
Gleason
Clyde
Madison
CITY
FEBRUARY
Sedan
6
25
NY
LA
0
Carr
Gleason
Clyde
DEALERSHIP
Madison
CITY
MARCH
22
11
Modelagem Multidimensional
„
„
Utilização dos conceitos do modelo
multidimensional a fim de representar, de
forma clara, eficiente e flexível, a visão
multidimensional dos dados
Conceitos
„
„
Fatos
Dimensões
„
Hierarquias e Agregações
23
Fatos
„
Medidas numéricas do negócio
„
Sales Fact
date_key
product_key
store_key
dollar_sold
unit_sold
dollar_cost
„
Volume de vendas (número de itens, total em reais),
quantidade de itens em estoque, volume de
transações de cartão de crédito
Representados em uma Tabela de Fatos
„
„
„
Valores das medidas (numéricas e aditivas) e
Referências para as dimensões (granularidade)
Não armazena informação redundante! (textos,
valores zerados)
Quantidade de registros é normalmente muito grande
em um DW
25
12
Tabela de Fatos
„
Em um SGBD relacional
„
„
Sales Fact
date_key
product_key
store_key
dollar_sold
unit_sold
dollar_cost
„
„
Relação (Tabela)
Chaves estrangeiras para as tabelas de
dimensão
Chave primária é subconjunto das chaves
estrangeiras
Em um SGBD multidimensional
„
Cubo (vetor n-dimensional)
26
Dimensões
„
Product Dimension
product_key
description
brand
category
department
package type
package size
fat content
diet type
weight
weight unit of measure
storage type
...
Pontos de vista ou perspectivas do negócio
sobre os quais uma organização deseja
guardar registros
„
„
Loja, Produto, Fornecedor, Tempo
Representadas em Tabelas de Dimensão
„
Descrição completa da dimensão
„
„
Atributos textuais e de domínio discreto
preferencialmente
Essenciais para tornar o DW usável e legível
„
“Tipo de armazenamento = V” ou “Tipo de
armazenamento = Vácuo” ?
27
13
Tabela de Dimensão
Product Dimension
product_key
description
brand
category
department
package type
package size
fat content
diet type
weight
weight unit of measure
storage type
...
„
„
Chave simples
Fonte principal das cláusulas das
consultas, agrupamentos e títulos
de relatórios
Volume de vendas “por produto”
„
„
„
„
Usualmente não dependente do
tempo
Desnormalizada
Hierarquias implícitas
28
Níveis nas dimensões ou
Hierarquias
„
Hierarquias são a base das agregações
Volume de vendas
Date Dimension
date_key
date
month
year
...
Ano
Mês
Dia
Área
geográfica
NE
PE
Tempo:
abril
2003
maio
País
Brasil
SUL
NO
SE RS
SC AC AM
23
62
7
34
14
21
23
92
73
23 234
13
87
21
14
45
29
15
30
…..
56
150
Região
Estado
Area Dimension
area_key
state
region
country
...
29
14
Hierarquias e Agregados
Produto
Tempo
Geografia
Consultas
Ano
Marca
País
Categoria
Trimestre
Região
Produto
Mês
Estado
Vendas por
Produto,
Ano e
Região
30
Esquemas para o modelo
Multidimensional
„
Fatos e dimensões podem ser dispostos
segundo diferentes configurações
„
„
„
Esquema Estrela
Esquema Flocos de Neve
Esquema Constelação de Fatos
31
15
Esquema Estrela
„
1 tabela de fatos
„
„
Sem redundância
n tabelas de dimensões
„
1 para cada dimensão
O quê
onde
quando
quem
32
Esquema Estrela
Time Dimension
time_key
day
month
year
holiday_flag
Sales Fact
time_key
product_key
store_key
dollar_sold
unit_sold
dollar_cost
Product Dimension
product_key
description
brand
category
Store Dimension
store_key
store_name
address
city
state
33
16
Modelagem Multidimensional:
Esquema Estrela
„
„
Dominante no projeto de DW [Kimball e Ross,
2002]
Características:
„
„
„
„
„
„
Distingue bem as dimensões dos fatos medidos
Simplifica a visualização dimensional
Simetria
Eficiente para a realização de consultas
Acomodam mudanças mais facilmente
Hierarquias são representadas pelos atributos
da dimensão
34
Exercício
„
Suponha o exemplo da concessionária Xcar já
apresentado, onde um gerente geral de
marketing deseja analisar o volume de
vendas dos modelos de carro de cada
fornecedor em cada cidade de cada estado
dos EUA, onde a concessionária possua filiais.
Especifique um esquema estrela para esta
concessionária. Dê alguns exemplos de
consultas e análises que poderiam ser úteis
para o gerente.
35
17
Exercício
„
M
O
D
E
L
Concessionária XCar
Mini Van
Mini Van
Coupe
Coupe
Carr
Gleason
Clyde
Sedan
NY
LA
Madison
Mini Van
Coupe
Carr
Gleason
Clyde
Sedan
NY
LA
Madison
Carr
Gleason
Clyde
Sedan
NY
LA
DEALERSHIP
Madison
CITY
CITY
CITY
JANUARY
FEBRUARY
MARCH
36
Esquema Floco de Neve
„
Variante do esquema estrela
„
1 tabela de fatos
„
K tabelas de dimensões
„
„
„
1 dimensão pode ter várias tabelas
Tabelas de dimensão são normalizadas
„
„
„
sem redundância
Evita redundância
Requer mais junções para as consultas
Hierarquias representadas pelos
relacionamentos entre as dimensões
39
18
Esquema Floco de Neve
40
Esquema Floco de Neve
Time Dimension
time_key
day_of_week
month
quarter
year
holiday_flag
Sales Fact
time_key
product_key
store_key
dollar_sold
unit_sold
dollar_cost
Product Dimension
product_key
description
category_key
Store Dimension
store_key
store_name
address
city_key
Category Dimension
category_key
description
brand_key
Brand Dimension
brand_key
description
City Dimension
city_key
city_name
state
41
19
Esquema Constelação de
Fatos
„
Múltiplas tabela de fatos com dimensões
compartilhadas
„
Maior complexidade
42
Esquema Constelação de
Fatos
Time Dimension
time_key
day_of_week
month
quarter
year
holiday_flag
Shipping Fact
Sales Fact
time_key
product_key
location_key
dollar_sold
unit_sold
dollar_cost
Product Dimension
product_key
description
brand
category
Location Dimension
loc_key
loc_name
address
city
state
time_key
product_key
from_location_key
to_location_key
shipper_key
dollar_cost
units_shipped
Shipper Dimension
shipper_key
shipper_name
location_key
43
20
A Modelagem Multidimensional no
Projeto de DWs
„
Etapas:
„
Escolha do processo de negócio
„
„
„
„
Departamental ou corporativo
Pedidos, seguros, inventário, vendas, entregas
Os de maior impacto para o usuário primeiro
Escolha da granularidade do Processo de Negócio
„
„
„
Nível mais detalhado das medidas da tabela de fatos
Transações individuais ou posições periódicas
Cada item de uma nota fiscal de venda, um cartão de
embarque em um vôo, posição diária de um produto em
estoque, posição mensal de uma conta bancária
44
A Modelagem Multidimensional no
Projeto de DWs
„
Etapas:
„
Escolha das dimensões para cada tabela de fatos
„
„
„
Como descrever os dados do negócio?
Data (tempo), produto, cliente, tipo de transação
Escolha das medidas para a tabela de fatos
„
„
„
„
Que medidas devem ser acompanhadas?
Granularidade definida pelas dimensões relacionadas
Quantidade solicitada, Custo em reais
Percentuais não devem ser armazenados, e sim seus
numeradores e denominadores
45
21
Questões críticas para
modelagem dimensional
„
Foco nos requisitos e objetivos do negócio
„
„
„
Envolvimento do patrocinador e usuários gerenciais é essencial
para o sucesso
Adote uma abordagem incremental e iterativa para o
desenvolvimento do DW
„
„
„
„
„
Não tente fazer tudo de uma vez
Desempenho das consultas do usuário e facilidade de uso são
os fatores mais críticos
„
„
Não na tecnologia e nos dados
Otimização de consultas OLAP
Apresente os dados de forma simples, e com a semântica clara
Nível de detalhe deve chegar até os dados atômicos
Esteja preparado para mudanças no negócio e nos dados
Dê especial atenção à aceitação dos usuários
46
Conclusão
„
Modelagem dimensional é a abordagem
utilizada para o projeto de DWs
„
Visão dimensional dos dados
„
„
„
Esquemas
„
„
intuitiva, flexível e eficiente para consultas
Fatos, dimensões e hierarquias
Estrela, flocos de neve e constelação de fatos
Fases do projeto
„
Escolha do: Processo de negócio, granularidade,
dimensões e medidas de fatos (nesta ordem)
47
22
Exemplo de tabela Tempo
date
key
1
2
3
4
5
6
7
8
9
full date
1/1/96
1/2/96
1/3/96
1/4/96
1/5/96
1/6/96
1/7/96
1/8/96
1/9/96
day
day
day
abbre
day
day of num in num
v
week month overall name
1
1
1 Monday Mon
2
2
2 Tuesday Tue
3
3
3 WednesdaWed
4
4
4 Thursday Thu
5
5
5 Friday
Fri
6
6
6 Saturday Sat
7
7
7 Sunday Sun
1
8
8 Monday Mon
2
9
9 Tuesday Tue
week week
weekday num in num
year overall
flag
y
1
1
y
1
1
y
1
1
y
1
1
y
1
1
n
1
1
n
1
1
y
2
2
y
2
2
week
month
begin
week
num
month
date
begin
name
key month overall
date
1/1/96
1
1
1 January
1/1/96
1
1
1 January
1/1/96
1
1
1 January
1/1/96
1
1
1 January
1/1/96
1
1
1 January
1/1/96
1
1
1 January
1/1/96
1
1
1 January
1/8/96
8
1
1 January
1/8/96
8
1
1 January
month
abbrev
Jan
Jan
Jan
Jan
Jan
Jan
Jan
Jan
Jan
48
Exercício
„
Suponha uma Companhia Aérea GOAL que
deseja construir um DW para o seu negócio.
Seu objetivo principal é aumentar seu lucro
através do aumento da taxa de ocupação de
seus vôos, para isso lançando promoções e
descontos aos clientes. Também é desejável
otimizar a escala da tripulação, e o período
de manutenção das aeronaves. Projete um
esquema para o DW da companhia GOAL,
descrevendo o resultado de cada uma das
etapas da modelagem dimensional
apresentadas.
49
23
Download