Você está na página 1de 23

Introdução à Modelagem

Dimensional para
Datawarehouses

Fernanda Baião
fernanda.baiao@uniriotec.br
PPGI – UNIRIO

Abril 2007

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

1
Ambiente de aplicações

Adaptado de:
Carlos Barbieri 3
BI: Business Intelligence - Modelagem e Tecnologia

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

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

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

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

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

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]

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

Ferramenta
Fontes de Dados
DW OLAP
Operacionais
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
Ferramentas
Relatórios Análise Mineração de Dados

Servidor
OLAP

DW
Servidor
Extração DW
Metadados Limpeza
Transformações Data Marts
Carga
Atualização
Dados
13
BDs operacionais Fontes externas

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 ? Em quanto
aumentaram as
Como foi a distribuição vendas do Produto X
das vendas do Produto durante a promoção
X em todas as cidades em abril de 2003 ?
no ano passado?

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

18

9
Visão multidimensional
„ Volume de vendas para a concessionária Xcar

Mini Van 6 5 4
M
O
D Coupe 3 5 5
E
L
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 19

Acrescentando mais uma


coluna... MODEL
MINI VAN
CITY
NEW YORK
DEALERSHIP
CLYDE
VOLUME
6
MINI VAN NEW YORK GLEASON 6
MINI VAN NEW YORK CARR 2

„ Volume de MINI VAN


MINI VAN
LOS ANGELES
LOS ANGELES
CLYDE
GLEASON
3
5

vendas por
MINI VAN LOS ANGELES CARR 5
MINI VAN MADISON CLYDE 2
MINI VAN MADISON GLEASON 4

fornecedor MINI VAN


SPORTS COUPE
MADISON
NEW YORK
CARR
CLYDE
3
2
SPORTS COUPE NEW YORK GLEASON 3
SPORTS COUPE NEW YORK CARR 2
SPORTS COUPE LOS ANGELES CLYDE 7
SPORTS COUPE LOS ANGELES GLEASON 5
SPORTS COUPE LOS ANGELES CARR 2
SPORTS COUPE MADISON CLYDE 4
SPORTS COUPE MADISON GLEASON 5
SPORTS COUPE MADISON CARR 1
SEDAN NEW YORK CLYDE 6
SEDAN NEW YORK GLEASON 4
SEDAN NEW YORK CARR 2
SEDAN LOS ANGELES CLYDE 1
SEDAN LOS ANGELES GLEASON 3
SEDAN LOS ANGELES CARR 4
SEDAN MADISON CLYDE 2
SEDAN MADISON GLEASON 2
SEDAN MADISON CARR 3 20

10
Visão multidimensional
„ Volume de vendas para a concessionária Xcar

Mini Van
M
O
D Coupe
E
L Sedan
6 1 2
Carr
Gleason
Clyde
DEALERSHIP
NY LA 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
„ Volume de vendas para a concessionária
Xcar, ao longo do tempo

M Mini Van Mini Van Mini Van


O
D Coupe Coupe Coupe

E
Carr Carr Carr
Sedan Sedan 5 Sedan
L 6 1 2 Gleason 10 1 Gleason 6 25 0 Gleason DEALERSHIP
Clyde Clyde Clyde
NY LA Madison NY LA Madison NY LA Madison

CITY CITY CITY

JANUARY FEBRUARY 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
„ Volume de vendas (número de itens, total em reais),
quantidade de itens em estoque, volume de
Sales Fact transações de cartão de crédito
date_key „ Representados em uma Tabela de Fatos
product_key
„ Valores das medidas (numéricas e aditivas) e
store_key
dollar_sold Referências para as dimensões (granularidade)
unit_sold „ Não armazena informação redundante! (textos,
dollar_cost valores zerados)
„ Quantidade de registros é normalmente muito grande
em um DW

25

12
Tabela de Fatos
„ Em um SGBD relacional
„ Relação (Tabela)
Sales Fact „ Chaves estrangeiras para as tabelas de
date_key dimensão
product_key „ Chave primária é subconjunto das chaves
store_key
dollar_sold estrangeiras
unit_sold
dollar_cost
„ Em um SGBD multidimensional
„ Cubo (vetor n-dimensional)

26

Dimensões
„ Pontos de vista ou perspectivas do negócio
Product Dimension
sobre os quais uma organização deseja
product_key guardar registros
description „ Loja, Produto, Fornecedor, Tempo
brand
category
„ Representadas em Tabelas de Dimensão
department „ Descrição completa da dimensão
package type „ Atributos textuais e de domínio discreto
package size preferencialmente
fat content „ Essenciais para tornar o DW usável e legível
diet type
weight „ “Tipo de armazenamento = V” ou “Tipo de
weight unit of measure armazenamento = Vácuo” ?
storage type
... 27

13
Tabela de Dimensão
Product Dimension „ Chave simples
product_key „ Fonte principal das cláusulas das
description
brand
consultas, agrupamentos e títulos
category de relatórios
department „ Volume de vendas “por produto”
package type
package size „ Usualmente não dependente do
fat content
diet type
tempo
weight „ Desnormalizada
weight unit of measure
storage type „ Hierarquias implícitas
...

28

Níveis nas dimensões ou


Hierarquias
„ Hierarquias são a base das agregações
Volume de vendas
Área País
Brasil
Date Dimension geográfica
NE SUL NO Região
date_key
date PE SE RS SC AC AM Estado
month
year Tempo: 7 34 23 45 62 56 150 Area Dimension
... area_key
abril 14 23 92 73 23 234
state
Ano Mês Dia 21 13 87 21 14
region
2003 29 country
maio
15 ….. ...
30
29

14
Hierarquias e Agregados

Produto Tempo Geografia


Consultas
Marca Ano País
Vendas por
Produto,
Categoria Trimestre Região Ano e
Região

Produto Mês Estado


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

quem quando

32

Esquema Estrela

Time Dimension Sales Fact Product Dimension


time_key product_key
time_key
day description
product_key
month brand
store_key
year category
dollar_sold
holiday_flag
unit_sold
dollar_cost
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
„ Concessionária XCar

M Mini Van Mini Van Mini Van


O
D Coupe Coupe Coupe

E Carr Carr Carr


Sedan Sedan Sedan
L Gleason
Clyde
Gleason
Clyde
Gleason
Clyde
DEALERSHIP
NY LA Madison NY LA Madison NY LA Madison

CITY CITY CITY

JANUARY FEBRUARY MARCH


36

Esquema Floco de Neve


„ Variante do esquema estrela
„ 1 tabela de fatos
„ sem redundância
„ K tabelas de dimensões
„ 1 dimensão pode ter várias tabelas
„ Tabelas de dimensão são normalizadas
„ 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


Category Dimension
Time Dimension category_key
time_key description
Product Dimension
day_of_week Sales Fact brand_key
product_key
month
description
quarter time_key
category_key Brand Dimension
year product_key
holiday_flag store_key brand_key
dollar_sold description
unit_sold
dollar_cost Store Dimension City Dimension
store_key city_key
store_name city_name
address state
city_key
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 Shipping Fact


time_key
Product Dimension time_key
day_of_week
product_key product_key
month
quarter Sales Fact description from_location_key
brand to_location_key
year
time_key category shipper_key
holiday_flag
product_key dollar_cost
location_key units_shipped
dollar_sold Location Dimension
unit_sold loc_key Shipper Dimension
dollar_cost loc_name
shipper_key
address
shipper_name
city
location_key
state 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
„ Não na tecnologia e nos dados
„ 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
„ 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
„ intuitiva, flexível e eficiente para consultas
„ Fatos, dimensões e hierarquias
„ Esquemas
„ 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
week
day day day week week week begin month
date day of num in num day abbre weekday num in num begin date num month month
key full date week month overall name v flag year overall date key month overall name abbrev
1 1/1/96 1 1 1 Monday Mon y 1 1 1/1/96 1 1 1 January Jan
2 1/2/96 2 2 2 Tuesday Tue y 1 1 1/1/96 1 1 1 January Jan
3 1/3/96 3 3 3 WednesdaWed y 1 1 1/1/96 1 1 1 January Jan
4 1/4/96 4 4 4 Thursday Thu y 1 1 1/1/96 1 1 1 January Jan
5 1/5/96 5 5 5 Friday Fri y 1 1 1/1/96 1 1 1 January Jan
6 1/6/96 6 6 6 Saturday Sat n 1 1 1/1/96 1 1 1 January Jan
7 1/7/96 7 7 7 Sunday Sun n 1 1 1/1/96 1 1 1 January Jan
8 1/8/96 1 8 8 Monday Mon y 2 2 1/8/96 8 1 1 January Jan
9 1/9/96 2 9 9 Tuesday Tue y 2 2 1/8/96 8 1 1 January 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