Você está na página 1de 18

BANCO DE DADOS

DISTRIBUDOS e DATAWAREHOUSING
Asterio K. Tanaka
http://www.uniriotec.br/~tanaka/tin0036
tanaka@uniriotec.br

Modelagem Dimensional Conceitos Bsicos


Asterio K. Tanaka

Modelagem Multidimensional:
Esquema Estrela
Proposto por Ralph Kimball
Dominante no projeto de DW
Caractersticas:
Distingue melhor as dimenses dos fatos medidos
Simplifica a visualizao dimensional
Na verdade uma mistura de modelagem conceitual com
modelagem lgica, pois j bastante voltada para a
abordagem relacional (a literatura fala sempre em tabelas)

Asterio K. Tanaka

Page 1

Esquema Estrela
Uma
Umatabela
tabelade
defatos
fatoscercada
cercadade
detabelas
tabelasde
dedimenses
dimenses
Dimenso

Dimenso
Fato

Dimenso

Dimenso

Asterio K. Tanaka

Esquema Estrela - Exemplo


Dimenso Produto

Dimenso
Tempo
pk_tempo
data
mes
quadrimestre
ano
Flag_feriado

Fato Vendas
pk_tempo
pk_produto
pk_loja
preco_venda
unidades_venda
preco_custo

pk_produto
descricao
categoria
marca

Dimenso Loja
pk_loja
nome_loja
endereo
cidade
estado
Asterio K. Tanaka

Page 2

Exemplo Consultas
Vendas por categoria de produto sobre os ltimos seis
meses
Vendas por marca entre 1990 e 1995
Dimenso Loja

Colunas da chave composta ligando a tabela


de fatos s tabelas de dimenso

pk_tempo

pk_produto

pk_loja

Medidas Numricas

preco_venda unidades_venda

preco_custo

Dimenso Produto

Tabelas
de
Dimenso

Dimenso Tempo

Tabela de Fatos

...
Asterio K. Tanaka

Consulta SQL sobre um esquema estrela


select
Qtd Vendida
[Loja].[NomeLoja], [Tempo].[DataCompleta],
de cada Produto
[Produto].[Descricao],
por Loja e
Sum( [Vendas].[Unidades_Venda]) as Total
from
por Data
[Vendas], [Tempo], [Produto], [Loja]
where
[Vendas].[CodTempo] = [Tempo].[CodTempo] and
[Vendas].[CodProduto] = [Produto].[CodProduto] and
[Vendas].[CodLoja] = [Loja].[CodLoja]
group by
[Loja].[NomeLoja], [Tempo].[DataCompleta], [Produto].[Descricao]
order by
[Tempo].[DataCompleta], [Loja].[NomeLoja],
[Produto].[Descricao]

Asterio K. Tanaka

Page 3

Resultados
NomeLoja
DataCompleta Descricao
Total
================================================
East Loja
Oct 1, 1994
Athletic Drink 57
East Loja
Oct 1, 1994
Beef Stew
128
East Loja
Oct 1, 1994
Buffalo Jerky 202
East Loja
Oct 1, 1994
Chicken Dinner 161
East Loja
Oct 1, 1994
Clear Refresher 73
East Loja
Oct 1, 1994
Dried Grits
102
East Loja
Oct 1, 1994
Dry Tissues
16
East Loja
Oct 1, 1994
Extra Nougat 442
East Loja
Oct 1, 1994
Fizzy Classic 46
East Loja
Oct 1, 1994
Fizzy Light
65
East Loja
Oct 1, 1994
Lasagna
162
East Loja
Oct 1, 1994
Lots of Nuts
248
East Loja
Oct 1, 1994
Onion Slices
120
Asterio K. Tanaka

Tipos de Dimenses mais


comuns

quando

onde
Fato

quem

o qu

Asterio K. Tanaka

Page 4

Modelagem Dimensional

Esquema Estrela assimtrico


Em relao aos esquemas ERs

Tabela de Fatos
Tabela dominante
usualmente com grande volume de dados

Tabelas de Dimenses
Tabelas que qualificam os fatos
Uma juno liga cada tabela de dimenso tabela
de fatos
volume bem menor que as tabelas de fatos

Asterio K. Tanaka

Comparao entre a Modelagem ER


e a Multidimensional
Multidimensional

ER
1 diagrama (vrios processos de
negcio)

Vrios diagramas dimensionais


(1 para cada processo de negcio)

Usurios acham difcil entender e


navegar pelo modelo

Usurios reconhecem o seu


negcio

Muitas junes para responder a


consultas

Poucas junes

Dados atmicos

Dados atmicos e agregados

Planos de consultas extremanente


distintos e especficos para as
consultas previstas

Planos de consultas genricos


(assimetria do modelo)

Asterio K. Tanaka

Page 5

Tabela de Fatos

Chave composta pelas chaves das dimenses


Dimenso tempo sempre parte da chave (DW
histrico)
Medida do fato usualmente numrica
Fato Vendas
Fatos tipicamente aditivos
pk_tempo
Mas podem ser
pk_produto

pk_loja
preco_venda
unidades_venda
preco_custo

Semi-aditivos
No aditivos

Asterio K. Tanaka

Fatos Aditivos
So nmericos e podem ser somados
em relao s dimenses existentes
Sempre que, em uma modelagem, um
dado nmerico for apresentado, ento
este ser um bom indcio de um atributo
em fatos.
Em geral, fatos aditivos representam
medidas de atividade do negcio.
Valor Venda, Quantidade de produtos vendidos,..

Asterio K. Tanaka

Page 6

Fatos Semi-Aditivos
Tambm so nmericos
No podem ser somados em relao a
todas as dimenses existentes
semntica no permite.

Em geral, fatos semi-aditivos


representam leituras medidas de
intensidade do negcio.
So snapshots destas leituras que entram no DW.
O valor atual j leva em considerao valores passados.

Nvel de Estoque, Fechamento dirio/mensal de


conta,..
Asterio K. Tanaka

Fatos No-Aditivos
Algumas observaes no nmericas
podem eventualmente ser fatos.
Em um DW para registrar acidentes de
transito:
Atributos:
carro1, carro2, mot.1, mot2., descrio do
acidente, descrio do tempo (chuva,...) e
descrio da pista.

Todas as informaes da situao acima


so fatos!
Asterio K. Tanaka

Page 7

Tabelas de Dimenses

Objetivo:

Servir como cabealho das linhas e colunas das anlises


e filtro nas consultas/relatrios

Caractersticas:

Chaves simples (em geral, artificiais: surrogate keys)


Descrio nica para cada registro
Usualmente no dependente do tempo
Desnormalizada
Dimenso Loja
Hierarquias implcitas
pk_loja
nome_loja
endereo
cidade
estado

Asterio K. Tanaka

Hierarquias de Dimenses

Uma dimenso pode ter mltiplas


hierarquias alm de outros atributos
descritivos
Exemplo para uma empresa atacadista:

Geografia fsica:
cep, cidade, estado, regio, pas
Geografia de vendas:
territrio, regio, zona
Geografia de Distribuio:
AD primria , regio
Asterio K. Tanaka

Page 8

Passos da Modelagem Dimensional


Definio da rea do negcio
Definir processos dentro da rea de negcio
Definio a granularidade desejada para os
dados de cada processo
Considerar volumes e dificuldades de se obter o nvel
desejado

Definio dos atributos e hierarquia das


dimenses
Considerar hierarquias mltiplas

Definio das mtricas das tabelas de Fatos


Observar valores aditivos, semi-aditivos e no aditivos

Asterio K. Tanaka

Dicas importantes na Modelagem Dimensional


Faa ou use um modelo de dados convencional E-R como ponto
de partida para o trabalho de modelagem dimensional.
Observe os relacionamentos 1:N existentes. Eles podem sugerir
dimenses
Observe as entidades fortes. Elas tambm podem sugerir
dimenses.
Observe as entidades que expressam documentos como Nota
Fiscal, Pedido, Ordem de Compra, etc. Elas podem sugerir fatos.
Observe os relacionamentos M:N. Na sua interseo, pode haver
valores numricos. Isto sugere fatos.
Observe os atributos que estaro nas tabelas de dimenses.
Analise a relao de hierarquias entre esses atributos de
dimenso. Atente para os relacionamentos M:N entre eles. Isto
pode definir granularidade.

Asterio K. Tanaka

Page 9

Dicas importantes na Modelagem Dimensional


As tabelas FATOS, tipicamente, armazenam dados, valores
atmicos ou agregados obtidos a partir destes.
As mtricas das tabelas FATOS so normalmente aditivas em
certas dimenses.
As tabelas FATOS possuem chaves que as conectam s
diferentes DIMENSES que as circundam. Essa conexo se d
num nvel de granularidade compatvel entre elas (FATO e
DIMENSO).
As tabelas DIMENSO armazenam os valores de filtro, check,
acesso e textos que caracterizam os dados trabalhados.
As tabelas FATOS so normalmente normalizadas.
As tabelas DIMENSES so normalmente desnormalizadas
(Esquema Estrela).
A granularidade combinada da tabela FATO com a de suas
tabelas DIMENSES determina o nmero de linhas das tabelas
do projeto.
Asterio K. Tanaka

Exemplo
Processos de uma empresa revendedora
de produtos:
planos de estoque, ordens de compra, inventrio,
pedidos de clientes, expedio de pedidos, crditos, etc.

Processos identificados
cria-se uma ou mais tabelas de fatos a partir de cada um
deles.

Neste ponto necessrio decidir o fato


individual naquela tabela
granularidade da tabela
uma linha sobre um produto, um perfil de venda
dirio do produto, ou um perfil de venda mensal do
produto
Por exemplo: tabela de fatos vendas acumuladas do
produto.
Asterio K. Tanaka

Page 10

Exemplo
Definir dimenses e suas respectivas
granularidades.
dimenses tempo, produto e vendedor so criadas.
outras dimenses descritivas como:
local-de-expedio, local-de-recebimento, modo-deenvio.

Cada dimenso pode ser vista como um


ponto de entrada para a tabela de fatos.
A escolha das dimenses o ponto chave no
projeto.

O passo seguinte consiste em detalhar:


todas as medidas que constaro da tabela de fatos; e
completar as tabelas de dimenses.

Asterio K. Tanaka

Exemplo

Asterio K. Tanaka

Page 11

Variaes do Esquema Estrela


Esquema floco de neve
O esquema floco de neve uma variao do
esquema estrela no qual todas as tabelas
dimenso so normalizadas na terceira forma
normal (3FN)
Reduzem a redundncia mas aumentam a
complexidade do esquema e consequentemente
a compreenso por parte dos usurios
Dificultam as implementaes de ferramentas
de visualizao dos dados
Asterio K. Tanaka

Esquema Floco de Neve


Dimenses normalizadas

Fatos como no
Esquema estrela
Asterio K. Tanaka

Page 12

Esquema Flocos de Neve Exemplo


Ano
Ms

Ano

Ms
Ano

Tabela de Fatos
De Vendas

Tempo
pk_tempo
data
ms

pk_tempo

Cidade

Estado

pk_loja

Pk_loja
Cidade

Unidades_vendidas
Preco_venda

Estado
Pas

Pas

pk_produto
descProd
Categoria

pk_produto

Loja

Cidade
Estado

Produto

Preco_custo

Pas
Regio

Medidas
Asterio K. Tanaka

Esquema Constelao de Fatos


Mltiplas tabela de fatos com dimenses
compartilhadas
Maior complexidade
Integra diferentes processos

Asterio K. Tanaka

Page 13

Esquema Constelao de Fatos


Time Dimension
time_key
day_of_week
month
quarter
year
holiday_flag

Shipping Fact
Product Dimension

Sales Fact
time_key
product_key
location_key
dollar_sold
unit_sold
dollar_cost

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

Asterio K. Tanaka

Modelo Entidades-Relacionamentos
(adequado para BDs operacionais)

Asterio K. Tanaka

Page 14

Modelo Dimensional
(Estrela ou Constelao de Fatos)

Dimenses
Fatos

Dimenses
desnormalizadas
Asterio K. Tanaka

Tabelas de Dimenso
Segundo KIMBALL, as tabelas de
dimenso no devem ser
normalizadas pois:
1) no h atualizao freqente nas bases;
2) o espao em disco economizado
relativamente pequeno e;
3) esse ganho de espao no justifica a perda de
performance na realizao de consultas por
conta dos joins necessrios em caso de
normalizao.

Asterio K. Tanaka

Page 15

Esquema Estrela - Conceitual

Asterio K. Tanaka

Esquema Estrela - Lgico

Asterio K. Tanaka

Page 16

Implementao do Modelo
Dimensional
SGBDs multidimensionais
implementam fisicamente o modelo
dimensional
problemas de desempenho, segurana e
confiabilidade
Esparsidade: clulas onde no h dados

SGBDs relacionais
Maior aceitao
Exige mapeamento (vide artigo de Colonese et
al.)

Asterio K. Tanaka

Escolha do SGBD

Asterio K. Tanaka

Page 17

Esquema Estrela - Fsico (Dimensional)

Asterio K. Tanaka

Page 18

Você também pode gostar