Академический Документы
Профессиональный Документы
Культура Документы
Modelagem Dimensional
Maria Cláudia Reis Cavalcanti
Roteiro
Conceitos
Arquitetura
Modelagem Dimensional
Passo a passo
Contexto
Desde 1970
Automação dos processos
Sistemas transacionais ou operacionais
Organizações ganham competitividade
Crescente quantidade de bancos de dados
Uso dos dados para apoiar decisões
estratégicas
Sistemas nao foram projetados para este fim
Sistemas sem integração
Conceitos
“Data Warehouse é uma coleção de dados
orientada por assunto, integrada, variante no
tempo e não volátil que tem por objetivo dar
suporte aos processos de tomada de decisão.”
-- -- INMON 1993
Sistemas Transacionais X
Sist. de Apoio a Decisão (Gerenciais)
Transacionais: Apoio a Decisão:
Consultas, alterações e Não-Volátil (foco nas
inserções (transação) consultas)
Foco no registro Foco no conjunto de
Aplicações Consultas,
Transacionais Análises,
Vários Aplicações
Bancos Analíticas
Por favor, reserve o de Dados Ferramentas
assento 2B no vôo OLAP
231... Quantos vôos
originaram-se de
Congonhas com mais de
80% de ocupação em
1998...
OLTP OLTP
Aplic.
Gerencial Não existe integração
Não existe uniformidade
OLTP Não existe confiabilidade
Custos de operação muito altos
Manutenção difícil
Caracterizando Separadamente
Tipo de Processamento :
OLTP x OLAP
OLTP OLAP
On-line transactional On-line analytical
processing processing
transações pontuais (1 “Pequeno” número de
registro por vez) consultas “variáveis”
Muita atualização centenas, milhares, ... de
Resultados de consultas registros por consulta
com poucos registros Oferece Diferentes
Consultas pontuais e perspectivas sobre os
pouco exploradas dados
Operações de agregação
e cruzamentos
Atualização quase
inexistente, apenas
novas inserções
Data Warehouse: revendo definição
“Data Warehouse é um processo,
não um produto. Ele é uma forma de
apropriadamente construir e gerenciar
dados oriundos de diversas fontes com
o propósito de obter desde uma simples
visão de partes, até uma visão global de
todo um negócio.” Building the
Data Warehouse
STEPHEN R.
GARDNER
ACM Communications
Vol.9, September, 1998
Arquitetura Distribuída
Ambiente Ambiente Ambiente Ambiente do Ambiente Usuário
Transacional de Extração de Data Data Mart
Warehouse Front-End
Base
Operational
Ferramentas
ETL
Data Mart
Relacional
Q Query Tools
Gerenciador
de Campanhas
Arquitetura do DW
Ambiente do DW
Dados já agregados e prontos para consulta analítica
Índices para melhorar desempenho
Política de backup
Política de arquivamento
Auto ajuste: materialização de agregações e indexação
conforme consultas dos usuários
Ambiente dos Data Marts
“Um Data Mart é um subconjunto lógico do Data
Warehouse, geralmente visto como um data warehouse
setorial.” [Kimball]
Mais simples, menor custo de construção, melhor
desempenho, menor número de usuários
Ambiente do usuário
OLAP, mineração de dados, reports, aplicações, etc.
Arquitetura Centralizada
Ambiente Ambiente Ambiente Ambiente Usuário
Transacional de Extração de Data
Warehouse Front-End
Base
Operational
Ferramentas
Q Query Tools
Data Mining
Entidades
Externas Data
e /Staging
ou
Area
Data OLAP Tools
Warehouse
Procedimentos
Listas BIS, EIS,
Externas DSS
Ambiente
Arquitetura Virtual ~ mediadores
Ambiente Ambiente Usuário
Transacional de Extração
Front-End
Base
Operational
Query Tools
Ferramentas
Data Mining
Entidades
Externas Data
e /Staging
ou
Area
OLAP Tools
Procedimentos
Listas BIS, EIS,
Externas DSS
Metadados centrais
Transformações,
Sumarizações,
Cálculos, fórmulas,
Estratégias de limpeza
Metadados do usuário
índices de qualidade dos dados, padrões de acesso
Building the
Data Warehouse
STEPHEN R.
GARDNER
ACM Communications
Vol.9, September, 1998
Modelagem de Dados
para Data Warehouses
Modelagem Dimensional
Visão Multidimensional
Implementações do modelo
Dimensional
Modelagem de Dados
para Data Warehouses
Modelagem Dimensional
Simplicidade
Fatos e dimensões
Flexibilidade no suporte às análises
várias visões sobre os dados
Fatos ou variáveis identificam dados a
analisar
Estes dados podem ser expressos segundo
diferentes parâmetros ou dimensões
Modelagem de Dados
para Data Warehouses
Unidades
Visão Vendidas
multidimensional
L TIJUCA 4 5 8
O
J URCA 3 6 5
A
GRAJAÚ 6 8 4
SABOR
Cubos
Os cubos são uma metáfora visual para fatos
(variáveis) associados a 3 dimensões
Para toda combinação de valores de dimensão
há uma célula no cubo para armazenar o dado
correspondente
L Tijuca
O
J Urca
A Grande
Botafogo Média TAMANHO
Brotinho
Muzz Calab Marg
SABOR
Hipercubos
Cubos com mais de 3 dimensões
L
M
O
Mini Van Mini Van Mini Van
O
D
E
Coupe Coupe Coupe
COLOR
SABOR SABOR
COLOR COLOR
SABOR
Categorias
Os valores que uma dimensão pode
assumir são chamados de categorias
Cada dimensão pode conter uma
grande quantidade de categorias
É comum que as categorias de cada
dimensão sejam organizadas de forma
hierárquica, formando as hierarquias
de dimensão
As hierarquias são a base para as
agregações
Hierarquias
Dimensão Geografia Uma mesma dimensão pode
País apresentar mais de uma categoria
Instâncias Brasil
Região Região
Fiscal
SE NE
Estado Distritos
SP RJ PE BA
Municípios
Agregados
Qual a margem de
contribuição de cada
área de vendas?
Implementação do Modelo
Dimensional
SGBDs multidimensionais
implementam fisicamente o modelo
dimensional
problemas de desempenho qdo são muitas
dimensões
Esparsidade: células onde não há dados
SGBDs relacionais
Maior aceitação
Exige adaptação
SGBD Multidimensional X Relacional
Esquema Estrela
Uma tabela de fatos cercada de tabelas de dimensões
Esquema Estrela
Um exemplo:
Dimensão TEMPO
Fatos de
VENDAS Dimensão PRODUTO
Cod_tempo Cod_produto
Cod_tempo
DataCompleta descrição
Cod_produto
Mes categoria
Cod_loja
Quadrimestre marca
Vendas_reais
Ano
Vendas_unidades
Flag_feriado
Custos_reais
Dimensão LOJA
Cod_loja
Nome_loja
endereço
cidade
estado
Tabela de Fatos
Grande volume de dados
Chave composta
referencia cada tabela de dimensão
Fatos de
Histórica
VENDAS
Variáveis/Fatos Cod_tempo
Usualmente numéricos Cod_produto
tipicamente aditivos Cod_loja
Vendas_reais
Armazenamento de agregados Vendas_unidades
Agiliza consultas Custos_reais
Critérios de escolha do que for mais útil
Onde armazenar: tabela de fatos auxiliar?
Tabelas de Dimensão
Volume Dimensão LOJA
Cod_loja
comparativamente Nome_loja
menor endereço
cidade
Chave simples estado
Descrevem os fatos
Atributos usados como
filtro nas consultas CodLoj Nome End Cidade Estado
1 Saraiva … Rio RJ
Hierarquias implícitas 2 Sodiler … Rio RJ
Desnormalizada => 3 Travessa … Rio RJ
redundâncias …
Tabelas de Dimensão
Produto Grupo
Segmento
Código Produto Código Grupo
Código Segmento
Nome Produto Nome Grupo
Descrição
Código Grupo
Ferramentas OLAP
Ferramentas para visualização dos
dados em um DW
Funcionalidades típicas
Pivoteamento ou rotação
Slice (projeções sobre o cubo)
Dice (seleções sobre o cubo)
Roll up/Drill down (agregações ou
detalhamento)
Drill accross (através de diferentes tabelas
de fatos)
Modelando um DW dimensional
Segundo Kimball [DW Tookit]
1 Selecionar o processo da empresa
Definir para cada tabela de fatos:
2 o nível de detalhe (granulosidade)
3 as dimensões
4 os fatos e suas unidades de medida
5 os atributos das dimensões
6 amplitude de tempo do DW
7 Como rastrear mudanças nas dimensões
8 aspectos de armazenamento físico
9 periodicidade de extração, transformação e carga
Passos 2 e 3:
Granulosidade e
dimensões
• Decidir o que um fato
representa
• Ex: uma venda de
propriedade
• Identificar as dimensões
envolvidas no fato
• “Conformed dimension
tables” : dimensões usadas
em mais de uma tabela de
fatos (2 Data marts)
Descrever
Nome, descrição, sexo do staff
Categorizar
Para cada dimensão que
categorias usar?
Usar taxonomias ou padroes
Hierarquias
City, region, country
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 WednesdayWed 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
IL
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.
Exercício
Concessionária XCar
M
M Mini
MiniVan
Van Mini
MiniVan
Van Mini
MiniVan
Van
O
O
O
D
D Coupe
Coupe Coupe
Coupe Coupe
Coupe
D
E
E
E
L Sedan
Sedan
Carr
Carr
Gleason
Gleason
Sedan
Sedan
Carr
Carr
Gleason
Gleason
Sedan
Sedan
Carr
Carr
Gleason
Gleason Fornecedor
DEALERSHIP
L
L NY LA Madison
Madison
Clyde
Clyde
NY LA Madison
Clyde
Clyde
NY LA Madison
Madison
Clyde
Clyde
NY LA NY LA Madison NY LA
O
CITY CITY CITY
Cidade cidade cidade
Janeiro
JANUARY FEBRUARY
Fevereiro MARCH
Março