Prévia do material em texto
Análise e Modelagem
Multidimensional
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Sistemas de Informação
Sistemas
Dado x Informação
Sistemas de Informação
Sistemas de apoio às operações
Sistemas de apoio à gestão
EDP, MIS, DSS
Data Warehouse
Modelagem Multidimensional
Sistemas
“Um conjunto de elementos interdependentes
em interação, com vistas a atingir um objetivo”.
(Cautela & Polloni, 1986, p.15)
“Qualquer conjunto de partes unidas entre si
pode ser considerado um sistema, desde que as
relações entre as partes e o comportamento do
todo seja foco de atenção”. ( Chiavenato, TGA,
p. 516)
Elementos de um sistemas podem ser outros
sistemas (subsistemas).
Sistemas
Exemplos de sistema:
Automóvel
Quais os objetivos ?
Quais os subsistemas que compõem o sistema
automóvel ?
Computador
Quais os objetivos?
Quais os subsistemas que compõem o sistema
computador?
Dado x Informação
Dado é qualquer elemento identificado
em sua forma bruta que por si só não
conduz a uma compreensão de
determinado fato ou situação.
Informação é o dado trabalhado que
permite a tomada de decisão.
Dado x Informação
Exemplo:
Mede-se pressão arterial
Qual é a tendência de saúde do cliente
em função dos dados históricos de
pressão arterial?
Dado x Informação
Exemplo:
Exemplos de dados em uma empresa:
quantidade de produção, custo da matéria-
prima, número de funcionários.
Como resultado da análise de tais dados tem-
se a informação : capacidade de produção,
custo de venda do produto, produtividade do
funcionário.
Como o executivo pode usar esta informação?
Dados x Informação
Características da Informação:
Clara
Precisa
Rápida
Dirigida
Sistemas de Informação
Sistemas de Informação (SI) são sistemas
que permitem a coleta, o armazenamento, o
processamento, a recuperação e a
disseminação de informações.
SI são, hoje, quase sem exceção, baseados
no computador e apóiam as funções
operacionais, gerenciais e de tomada de
decisão existentes na organização.
Sistemas de Informação
Os sistemas de informação podem ser
classificados em dois grupos principais
Sistemas de apoio às operações.
Sistemas de apoio à gestão.
BIO (1996, p.34) :
Sistemas de apoio às operações
Os “sistemas de apoio às operações”
são tipicamente sistemas que processam
transações , ou seja, são redes de
procedimentos rotineiros que servem
para o processamento de informações
recorrentes.
Sistemas de apoio às operações
Sistemas de Informação Transacionais
Exemplos: folha de pagamento,
processamento de pedidos, compra
Sistemas para a tomada de decisões
voltadas para a operação.
Exemplos: planejamento e controle da
produção, custos, contabilidade.
Sistemas de apoio à gestão
Os " sistemas de apoio à gestão "
existem especificamente para auxiliar
processos decisórios.
Exemplos: previsões de vendas,
orçamentos, análises financeiras, etc.
Processamento Eletrônico
de Dados
Desenvolvimento dos sistemas de
informação computacionais em
empresas:
EDP: Eletronic Data Processing
MIS: Management Information System
DSS: Decision Suport System
SPRAGUE(1991, p.9)
Processamento Eletrônico
de Dados (EDP)
Aplicado inicialmente aos níveis
operacionais mais baixos da empresa no
sentido de automatizar o trabalho.
Características:
Foco no armazenamento, processamento
e fluxos de dados no nível operacional;
Processamento de transações eficientes;
Relatórios para gerenciamento.
Sistemas de Informação
Gerenciais (MIS)
Características:
Foco sobre a informação, direcionando a
gerentes de nível médio (tático);
Integração de atividades de EDP por função
comercial, tais como MIS para produção,
MIS para marketing, MIS para pessoal, etc.;
Geração de relatórios e consultas,
normalmente com um banco de dados.
Sistemas de Suporte a
Decisão (DSS)
Um DSS tem seu foco num nível mais alto
da organização (estratégico).
Características:
Foco sobre as decisões, voltado para
gerentes de alto nível e para os
responsáveis pela tomada de decisões;
Ênfase na flexibilidade, adaptabilidade e
capacidade de fornecer respostas rápidas;
Sistemas de Suporte a
Decisão (SSD)
Permitem armazenar e analisar grandes
BD para extrair informações que auxiliam
a compreensão do comportamento dos
dados sobre o negócio.
Fornecem apoio ao suporte estratégico de
decisão.
Consistem em sistemas computacionais
de suporte à decisão que integram dados
oriundos de diversas fontes de dados.
Suporte a Decisão x Operacional
Operacional → orientado por transação
Ex: o produto vendido, o artigo publicado, o
imposto predial pago
Decisão → orientado por assunto
Ex: Vendas, Publicações de Artigos,
Gerenciamento Urbano
Sistemas de Suporte a
Decisão (SSD)
Visualizar tendências:
Sazonalidade de vendas de determinados
produtos
Regionalização de vendas
Market Share
Sistemas de Suporte a
Decisão (SSD)
Análise de Dados
Qual o desempenho dos nossos representantes em
cada região?
Para cada produto, qual o total de vendas no último
ano?
Como tem variado o índice de participação de cada
produto em nossas vendas (Market Share) ao longo
dos três últimos anos?
Existe alguma relação entre o desempenho dos
representantes e sua faixa de salário?
Suporte a Decisão
Informações normalmente resultam de
processamento de séries históricas de
dados.
Desafios:
Grande quantidade de dados, acesso
lento aos dados, aplicações de
controle, ...
Sistemas de Suporte a
Decisão (SSD)
Dividir os dados em dois ambientes
ortogonais
Operacional (normalmente já existe)
Estratégico (construir um DW)
Data Warehouse
Definição
DW é uma base de dados que facilita a
execução de consultas de apoio à decisão
(Bill Inmon)
Armazém de dado onde a história da
empresa, seus clientes, fornecedores e
operações estejam disponíveis e acessíveis
para consultas e análises.
Data Warehouse
Objetivos
Fornecer uma imagem global da
realidade do negócio.
Exibir informações em níveis apropriados
de detalhes (resumido ou detalhado).
Otimizar o processamento de consultas
complexas (Modelo Estrela ou Flocos
de Neve).
Data Warehouse
Diferente perspectiva para projetar
sistemas
Consistência entre dados não é mais a
preocupação fundamental.
O mais importante é que os dados
estejam acessíveis para análise.
Frequentemente são desnormalizados e
sumarizados.
Data Warehouse
Reduzir tempo gasto com obtenção e análise
dos dados para tomada de decisão.
Tornar tomada de decisão seja mais calculada
e precisa.
Enfim, fornecer informação de qualidade:
Clara, Precisa, Rápida (Acessível), Dirigida
Modelagem Multidimensional
Técnica desenvolvida para a obtenção de
modelos de dados de simples entendimento e
alta performance de acesso a dados.
Data Warehouse é orientado somente para
consulta de seus dados.
Projeto de DW deve resultar num armazém de
dados organizado e acessível.
Informações necessárias à gestão e não ao
controle dos negócios.
Exercício
Que tipo de SI você desenvolveu no semestre
anterior na disciplina LPOO I, DWEB II, ES I ?
Identifique as características daquele S.I.
Identifique informações úteis aos gerentes de
alto nível da empresa.
Discuta as dificuldades de fornecer estas
informações a partir do banco de dados
atualmente usado.
Análise e Modelagem
Multidimensional
Ambiente de Data Warehouse
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Características dos sistemas
OLTP x OLAP
CARACTERISTICA OLTP OLAP
Operação típica Atualizações Consulta
Nível de requisitos
analíticos
Baixo Alto
Quantidade de dados
por transação
Pequena Grande
Época dos dados Atual Históricos
Orientação RegistrosAssunto
Por que OLTP não é adequado
para análises complexas?
OLTP Análises Complexas
Informação para dar
suporte a serviços do
dia-a-dia.
Análise de informações
históricas.
Dados armazenados
em nível de
transação.
Dados precisam ser
integrados.
Projeto do Banco de
Dados: Normalizado
Desnormalizado,
esquema estrela.
Analisando dados de sistemas
operacionais (transacionais)
Estruturas de dados complexas.
Sistemas projetados para alta performance
de processamento de transações e não
para análise de informações.
Dados não representados de maneira
significativa.
Analisando dados de sistemas
operacionais (transacionais)
Dados dispersos.
Mesmos elementos de dados podem ser
representado de modo diferente em cada
sistema.
Processamento concorrente de transações
e analítico degrada o desempenho dos
sistemas.
Extração de Dados
Dados selecionados de um ambiente (operacional) e transportados
para outro (decisão).
Usuários possuem seus próprios dados
Sistemas
de Operações Extrações
Tomadores
de decisão
Extração de Dados
Explosão de Extrações
Sistemas
de Operações Extrações
Tomadores
de decisão
Extração de Dados - Problemas
Esforço duplicado.
Não há base de tempo comum.
Diferentes algoritmos de cálculos.
Diferentes nomes dos campos de dados
Diferentes significados dos campo de dados.
Não há regras de correção de dados.
Ausência de capacidade de drill-down.
Relatórios produzem dados =/= informações.
Data Warehouses
Confiável
Informação de qualidade
Única fonte de dados
Data Warehouse
DW é uma base de dados que facilita a
execução de consultas de apoio à decisão
(Bill Inmon)
Uma base de dados de suporte a decisão
mantida separadamente da base de dados
operacional da organização.
Data Warehouse
Objetivos:
Fornecer uma imagem global da realidade do
negócio.
Exibir informações em níveis apropriados de
detalhes (resumido ou detalhado)
Otimizar o processamento de consultas
complexas (Modelo Estrela ou Flocos de Neve)
Data Warehousing
Processo de fazer Data Warehouse.
Técnica para agrupar e gerenciar dados de várias fontes
com o propósito de responder questões de negócio.
Construção do Data Warehouse exige:
• Levantamento de necessidades da empresa e seus
executivos.
• Transferência e transformação dos dados existentes em
sistemas corporativos.
Características do Ambiente de DW
Extração de dados de fontes heterogêneas.
Orientação por Assunto.
Variação no Tempo.
Não Volátil.
Integração.
Fontes de Dados
Exemplos de fontes para um ambiente analítico de
empresa aérea:
Operações: Horários reais dos vôos, Escala de
Tripulação de cada vôo.
Reserva: Agendas dos vôos, Reservas dos
Passageiros Calendário de feriados.
Relacionamento com o cliente: Compensações por
atraso, Milhagem ganha.
Informações técnicas: Tabela de milhagem entre
cidades, Tabela de ligações entre cidades.
Orientação por Assunto
Informações agrupadas por assuntos de interesse da
empresa =/=
Sistemas transacionais: orientados para as transações
realizadas diariamente.
Assuntos são os principais processos de negócio
Mostra desempenho e possui indicadores de sua
evolução
No Data Warehouse somente interessam dados
importantes para a tomada de decisões.
Sistemas transacionais: dados para fins de controle
operacional.
Orientação por Assunto
Pedido, nota fiscal
Ordem de produção,
máquina
Falha, Produto
Vendas
Produção
Qualidade
Variação de Tempo
Dados de um DW representam resultados operacionais
em determinado momento.
Não podem ser atualizados.
DW: Guarda história da variação dos dados ao longo do
tempo.
Ex.: Visualização de saldo bancário X Evolução dos
saldos mensais durante um longo período.
Horizonte de tempo dos sistemas DW é muito maior que o
dos sistemas transacionais
30 – 90 dias X 5 a 10 anos.
Não Volátil
DW tem duas operações básicas:
Carga dos dados (inicial e incremental)
Acesso aos dados em modo de leitura
Não há preocupação com atualizações de
registros, nem necessidade de bloqueio por
concorrência de usuários no acesso.
UMA VIA
Integração
Dados em um DW possuem alto nível de
integração.
Integração
Exemplo:
Convenções de nomes e valores de variáveis
são formalmente unificados e integrados.
Arquitetura do Ambiente
A arquitetura de um DW inclui:
Estrutura de dados, mecanismos de
comunicação, processamento e apresentação
da informação para o usuário.
As arquiteturas orientadas ao ambiente de
DW são constituídas por:
Conjunto de ferramentas: Desde a carga inicial
até o processamento de consultas.
Repositório de dados: o Data Warehouse e os
Data Marts.
Arquitetura do Ambiente
Ferramentas:
Carga inicial e atualizações periódicas do DW.
Extração dos dados de múltiplos sistemas
transacionais e fontes externas.
Limpeza, transformação e integração dos dados.
Consultas orientadas para o usuário final:
Elaboração de relatórios, análise de desempenho
e mineração de dados.
Arquitetura do Ambiente
Repositórios:
Data Warehouse:
Grande conjunto de todos os dados (armazém de dados).
Data Marts (DM):
Prateleiras do armazém de dados.
Repositórios menores,
orientados a áreas específicas.
Arquitetura do Ambiente
Componentes do ADW
Papéis exercidos por pessoas.
Processos / ferramentas
Papéis:
Responsáveis pela carga dos dados
Usuários finais
Responsáveis pelo desenvolvimento e manutenção do
DW e dos DM:
DBAs e Das (muitas vezes o desenvolvedor
mesmo).
Processos e ferramentas
Os processos do ADW consistem
na extração dos dados das diversas fontes,
na organização e integração destes dados de forma consistente
para o DW,
no acesso aos dados integrados de modo eficiente e flexível.
Desenvolvimento de sistemas ou avaliação de
ferramentas para extração de dados e atualização do
DW.
Filtragem, limpeza, sumarização e concentração dos dados
espalhados pelas fontes externas e nos sistemas operativos.
Processos e ferramentas
Ferramentas para pesquisa e relatórios.
Ferramentas do tipo OLAP (On-line Analytical
Processing).
Sistemas de informações executivas
Data Mining
Permite ao usuário avaliar tendências e padrões não
conhecidos entre os dados.
Redes Neurais, algoritmos genéticos e lógica nebulosa.
ETL
Extract
Extração de dados de fontes externas e
ambientes operativos.
Transform
Transformação dos dados para melhor se
adequar às necessidades do negócio.
Load
Carregar os dados no data warehouse.
Extração
Projetos de Datawarehousing consolidam
dados de diferentes fontes.
Cada fonte pode usar um formato de
dados diferente.
Mais comuns são tabelas de um banco de
dados relacional e arquivos texto (flat files).
O processo de extração converte os dados
em um formato para o processo de
transformação.
Transformação
Este processo aplica regras ou funções nos
dados extraídos para transformá-los os dados a
serem carregados no DW.
Possíveis transformações são:
– Selecionar apenas algumas colunas
para carregar.
– Traduzir valores codificados (e.x., se o
sistema fonte armazena 1 para
masculino e 2 para feminino, mas o DW
armazena M e F).
Transformação
– Codificar valores “livres” (e.x.,
mapear "Masculino" e "M" em 1)
– Obter um valor calculado (e.x.,
total_vendas = qtd * preco_unit)
– Sumarizar múltiplas linhas de dados
(e.x., total de vendas para cada
região) .
– Quebrar uma coluna em várias
Carga
Carregar os dados, já transformados, no
Data Warehouse.
Mantendo a história dos dados.
Os Dados
Os dados encontram-se em repositórios
que constituem uma das principais
preocupações de um ADW
Apresentaremos três Repositórios:
ODS, DW, DM, BDs individuais ou cubos.
O emprego ou não de qualquer um deles
depende a arquitetura adotada.
Os Dados
Os dados podem ser armazenados em
diferentes níveis de agregação, como:
dados detalhados, configurando o nível
operacional, dados levemente sumarizados
e dados altamente sumarizados.
O ADW pode apresentar os seguintes
repositórios de dados:
ODS, DW, DM, BD Individuais.
Operational Data Storage (ODS)
ou Staging Area
Repositório de dados
operacionais integrados.
Operational Data Storage (ODS)
Consolidação de dados dispersos.
Permite extrações em períodos fora de pico de operações.
Pode ser usada para “limpar” dados “sujos”.
ODS
DW
Sistema de
vendas
Sistema
financeiro
Dados
sincronizados
Operational Data Storage (ODS)
Não é um componente indispensável em um
ADW. Sua criação é uma decisão de projeto.
Inicialmente temporário, informações
correntes.
DDS – Dynamic Data Storage
Não volátil
Alterações incrementais
Data Warehouse
É a espinha dorsal deste ambiente.
Representa uma grande base de dados capaz
de integrar, de forma concisa e confiável, as
informações (antes espalhadas) de interesse
para a empresa.
Nem tudo que é gerencial deve estar em um
Data Warehouse, somente informações em
caráter histórico e estatístico.
Data Warehouse
Análise de comportamento
Tendências
Crescimento – Indicadores de Negócio
Ambiente
Transacional
Acompanhamento de
Campanha de vendas
Data Marts
Subconjunto de dados do DW.
Dados do DM direcionados a um departamento
ou uma área específica do negócio.
Normalmente, é modelado em um esquema
estrela, de acordo com as necessidades
específicas do usuário final.
Possibilidade de retorno rápido ao usuário final.
BDs Individuais ou Cubos
Permitem aos usuários armazenar, em caráter
temporário, apenas dados de seu interesse,
Reduzindo o escopo da informação e acelerando seu
processamento.
Normalmente são um subconjunto do DM.
Destaque graças ao desenvolvimento de
ferramentas OLAP para Desktop (DOLAP).
Arquiteturas de DW
Em evolução
Variedade de opções
Analisar o problema para avaliar a
arquitetura mais adequada.
Atividade
Uma empresa pretende construir um DW:
(Você pode escolher qualquer ramo, exemplos: hotel,
supermercado).
Identifique fontes de dados.
Identifique assuntos de interesse para tomada de decisão.
Dê pelo menos dois exemplos de transformações nos dados.
Uma ODS seria necessário neste ambiente? Justifique.
Dê dois exemplos de tendências a serem analisadas com
informações do DW.
Dê um exemplo de análise que deve ser feita por uma aplicação
específica do ambiente transacional (e não no ambiente do DW).
Identifique DMs para o Ambiente de DW em questão.
Análise e Modelagem
Multidimensional
Arquiteturas de Data
Warehouse
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Granularidade de Dados
Nível de sumarização dos elementos e de detalhes
disponíveis nos dados.
Importante aspecto do projeto de DW.
Afeta volume de dados e tipos de consulta.
Quanto maior o volume menor a performance.
Exemplo:
Data
Hora
Vendedor
Valor
Mês
Vendedor
Valor
50 registros/mês 1 registro/mês
Granularidade de Dados
Alto nível de detalhes → Baixo nível de
granularidade.
Mais baixo nível de granularidade: Sistemas de
transações.
Exemplo:
Granularidade para vendas:
Mês, semana, dia
Período de Natal, Período de Páscoa
Granularidade de Dados
Não se refere apenas ao agrupamento de dados
no tempo.
Outras formas de agrupar informações:
Local: região, estado, cidade
Produto: marca, produto
Granularidade de Dados
Do ponto de vista dos negócios...
1. Interessaria para o gerente analisar a evolução das
vendas no dia 5 de cada mês nos últimos 5 anos?
2. E analisar o comportamento das vendas no mês de
Dezembro nos últimos 5 anos?
3. Analisar a evolução das vendas de cada exemplar de
um livro ou do de todos os exemplares?
4. Analisar a evolução das vendas em cada loja ou nas
lojas de uma região?
Arquiteturas de DW
Tipos de Arquitetura
Arquitetura Global
Arquitetura de DMs Independentes
Arquitetura de DMs Integrados
Abordagens de Implementação
Top Down
Bottom Up
Combinada
Arquitetura Global
Arquitetura
Determina o local onde o Data Warehouse, ou Data
Marts, residem.
Arquitetura Global:
Global: Escopo de acesso das informações
(≠Centralizada)
Disponível para toda a empresa.
Pode ser fisicamente centralizada ou distribuída.
Arquitetura de integração
Arquitetura Global
Trata a empresa como um todo
Visão corporativa de dados
Menor redundância de dados
Maior integração e consistência.
Manutenção mais fácil
Altíssimo tempo de desenvolvimento
Arquitetura de Data Marts
Independente
Cada departamento constrói e gerencia o seu Data Mart.
Data Marts atendem necessidades específicas de
departamentos.
Não há foco corporativo (visão global).
Maior redundância.
Menor integração.
Consultas mais limitadas.
Tempo menor de desenvolvimento.
Realidade Atual.
Arquitetura de Data Marts
Integrados
Data Marts implementados separadamente, mas
são integrados/ interconectados.
Dados comuns a vários Data Marts podem ser
compartilhados.
Mais complexo que DMs independentes.
Possibilita visão corporativa .
Solução intermediária entre Arquitetura Global e de
DMs independentes
Abordagens de Implementação
Como o DW será desenvolvido
Padrão inicial
Abordagens de
Implementação: Top Down
A partir do DW são extraídos dados para os Data Marts
Informações dos Data Marts:
Maior nível de sumarização
Menor nível no histórico do DW
Vantagens da Abordagem Top Down
Visão corporativa
Repositório de metadados centralizado e simples
Controle e centralização de regras
Abordagens de
Implementação: Top Down
Desvantagens:
Alta taxa de risco
Politicamente difícil de ser definida
Implementação Longa
Expectativa relacionadas ao ambiente
Abordagens de
Implementação: Bottomup
Construção de um DW incremental a partir do
desenvolvimento de DMs independentes
Abordagens de
Implementação: Bottomup
Avaliação de ferramentas e tecnologias só deve
ser realizada uma vez.
Vantagens:
Implementação rápida
Retorno rápido
Enfoque da equipe (desenvolvimento por áreas
de interesse).
Abordagens de
Implementação: Bottomup
Desvantagens:
Não há garantias de padrões únicos de
metadados.
Podem ocorrer redundâncias de dados e
inconsistências entre Data Marts.
Extração de dados para múltiplos Data Marts é
crítico na interferência junto aos sistemas
transacionais.
Desfio de possuir a visão corporativa.
Abordagem Bottom Up
Muitas das novas abordagens propostas, baseiam-
se na arquitetura "bottom-up".
Objetivos:
Otimizar o processo de desenvolvimento.
Garantir a consistência dos metadados e
facilidade de integração do ambiente.
Exemplos:
Enterprise Data Mart Architecture (EDMA)
Data Storage/Data Mart (DS/DM)
Abordagem Bottom Up
Enterprise Data Mart Architecture (EDMA)
Garantir uma padronização dos metadados utilizados na
construção do ambiente, permitindo o desenvolvimento
incremental do DW, com margens mínimas de duplicidade
e inconsistência de informações.
Introduz o DDS (substituindo o conceito do ODS original).
Abordagem Bottom Up
Enterprise Data Mart Architecture (EDMA)
Abordagem Bottom Up
Data Storage/Data Mart (DS/DM)
Similar à arquitetura EDMA, entretanto ela substitui
o DW por uma visão que representa uma
conjunção lógica de DM.
Abordagem Combinada
Planejamento Top-down
Desenvolvimento Bottom-up
Um DM de cada vez, escolhido por área de
interesse.
Coerência entre vários Data Marts.
Modelo de dadosúnico.
Análise e Modelagem
Multidimensional
Modelagem de Dados para
Data Warehouse
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Por que modelagem?
Modelo: abstração do mundo real.
Modelar: Forma de visualizar o que se deseja
realizar.
O mesmo vale para modelagem de dados
Abordagens diferentes de
modelagem
Diferentes técnicas para modelagem de dados:
Diagrama ER:
Análise de requisitos de negócio.
Desenho de uma estrutura de dados.
Modelagem multidimensional
Visualização de questões abstratas – requisitos
dos usuários de negócio.
Exige nível de abstração superior ao utilizado em
modelo de dados transacionais.
Abordagens diferentes de
modelagem
Operacionalização do negócio vs.
Gestão do negócio.
Exemplo de negócio residência:
Como está a evolução das despesas durante o ano?
Controlar despesas com relação ao orçamento do
mês.
Saber quais produtos ou serviços estão relacionados
com estas despesas.
Como está a relação percentual da despesa por tipo
de gasto em relação ao orçamento?
Abordagens diferentes de
modelagem
Porque não mover o modelo de dados transacional
para um banco de dados separado, inserindo
dados históricos?
- Complexidade de consultas ad-hoc.
- Desempenho (joins de tabelas)
Modelagem ER Conceitos
Básicos
Entidades Relacionamentos
Atributos Integridade
Modelagem Multidimensional
Mais simples e fácil de entender que modelagem
ER
Conceito relativamente novo
Modelo Multidimensional:
Fatos
Dimensões
Medidas
Fatos
Representa um item, uma transação ou um evento
de negócio.
Usado para analisar o processo de negócio de uma
empresa.
Reflete a evolução dos negócios do dia a dia de
uma organização.
Representado por valores numéricos.
Dimensões
São os elementos que participam de um fato.
São as possíveis formas de visualizar os dados
(“por”):
Por mês, por país, por produto, por região, etc.
Hierarquia de Dimensões
Classificação de dados dentro de uma
dimensão
Dimensão tempo: Ano, Trimestre, Mês, Dia.
Dimensões
Exemplo:
Fato: vendas de produtos.
Dimensões:
Tempo
Localização
Clientes
Vendedores
Medidas (Variáveis)
São os atributos numéricos que representam um
fato.
Performance de um indicador de negócios relativo
às dimensões que participam deste fato.
Medidas (Variáveis)
Exemplo:
Fato: vendas de produtos.
Dimensões: Tempo, Localização, Clientes,
Vendedores.
Medidas:
Valor reais em vendas
Número de unidade de produto vendidas
Quantidade em estoque
Medidas
Determinada pela combinação das dimensões que
participam de um fato.
Atributos de um fato.
Visualização de um modelo
multidimensional
Cubo:
Usado para visualizar um modelo dimensional.
Hipercubo (difícil visualização)
Visualização de um modelo
multidimensional
Fato?
Dimensões?
Hierarquias?
Medidas?
Localização
Produto
Tempo
11 21 38
354322
41 45 56
A B C
NOKIA LG
Recife
São Lourenço
João Pessoa
PE
PB
Visualização de um modelo
multidimensional
Medida: volume de
vendas
Determinado pela
combinação de três
dimensões.
Dimensões
localização e
produtos possuem
dois níveis de
hierarquia
Localização
Produto
Tempo
11 21 38
354322
41 45 56
A B C
NOKIA LG
Recife
São Lourenço
João Pessoa
PE
PB
Visualização de um modelo
multidimensional
Cubo
Metáfora
Pode-se ter 2,3,4..., n números de dimensões
Visualização de um modelo
multidimensional
Modelo Estrela
Estrutura básica de um modelo de dados
multidimensional.
Composição
Fato (entidade central) – Tabelas de Fato
Dimensões (entidades menores) – Tabelas de
Dimensão
Modelo Estrela
Elemento Central: Fato Vendas
Dimensões ao redor
Diagramação padrão
Relacionamentos
Um para muitos no sentido da dimensão para o
fato
Modelo Floco de Neve
Decomposição de dimensões que possuem
hierarquias entre seus membros.
Relacionamentos muitos para um entre entidades
dimensões.
Resultado da terceira forma normal sobre as
entidades dimensão.
Modelo Floco de Neve
Modelo Floco de Neve
Evita redundância de valores em uma tabela.
Lembrar que:
A prioridade não é economia de espaço
Informação rápida
Análise e Modelagem
Multidimensional
Fatos
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Modelo Multidimensional
Elementos Básicos:
Fatos
Dimensões
Medidas
Fatos
Que tipo de informações são armazenadas em
um DW?
Informações sobre notas fiscais?
Qual o assunto das notas fiscais?
Fatos
Tudo que pode ter importância para tomarmos
decisões na vida.
Assunto sobre o qual necessitamos possuir
informações históricas para compreender seu
comportamento e tomar decisões sobre ele.
Identificar Fatos:
Ponto delicado em um projeto de DW.
Fatos
Características:
Podem ser representados por um valor aditivo
(numérico)
Métricas ou Medidas.
São evolutivos:
Sua medida varia com o tempo
Seu histórico é mantido e cresce com o tempo.
Fatos
“O índice de aprovação escolar na cadeira de
Banco de Dados vem diminuindo nos últimos
dois anos”
De que Fato se trata?
Representado por valores numéricos?
Varia com o tempo?
Possui histórico?
Fatos
Curso Alunos AP %AP Alunos AP %AP Alunos AP %AP
BD 50 41 0,82 45 35 0,78 50 35 0,7
Redes 45 40 0,89 55 42 0,76 45 42 0,93
LPOO 48 37 0,77 50 37 0,74 48 40 0,83
2005 2006 2007
Curso Alunos AP %AP Alunos AP %AP Alunos AP %AP
BD 5 0 0,0 12 1 0,08 12 3 0,25
Redes 13 7 0,53 11 6 0,54 5 4 0,80
LPOO 4 1 0,25 3 0 0,0 4 4 1,00
2009 2010 2011.1
Fatos
“O consumo de bebidas alcoólicas aumentou no Brasil
entre 2009 e 2010”
“O índices de criminalidade aumentaram no ano atual
50% sobre os últimos dois anos”
Observe: Índices dão a ideia de se tratar de
conjuntos de medidas de alguma coisa.
Identificando fatos
Quando entrevistamos um executivo suas
necessidades não aparecem sob a forma de um
modelo de dados.
Entretanto eles são muito objetivos quanto aos
indicadores de negócio.
Vamos buscar identificar os fatos do negócio.
Só então poderemos projetar algo sensato para um
DM/ DW.
Identificando fatos
“Qual a participação dos clientes da região sudeste
em nosso mix de vendas?”
“Qual a performance de nossos representantes em
cada região?”
“Precisamos saber qual o índice de participação de
cada produto nas nossas vendas, o product share”.
Identificando fatos
O que é o fato?
O que varia ao longo do tempo?
O que possui valor numérico relativo a períodos
de tempo?
Sobre o que podemos manter dados históricos
com o passar do tempo?
Identificando fatos
O que é o fato?
O que varia ao longo do tempo?
O que possui valor numérico relativo a períodos
de tempo?
Sobre o que podemos manter dados históricos
com o passar do tempo?
VENDAS
Identificando fatos
O que vem a ser considerada a “participação dos
clientes na região sudeste”?
Performance dos representantes seria um fato?
Identificando fatos
Indicadores numéricos obtido a partir de um
conjunto de valores.
Exemplos??
Identificando fatos
Em modelagem ER tradicional:
Verbos: Relacionamento
Nomes: Entidades
E em modelagem multidimensional? O que
identifica um fato?
Identificando fatos
Em modelagem ER tradicional:
Verbos: Relacionamento
Nomes: Entidades
E em modelagem multidimensional? O que
identifica um fato?
Indicadores matemáticos:
• Participação, Performance, Evolução, Índice
Exercício 1
Identifique o fato e justifique sua resposta:
“Um programa exemplar faz do RS campeão em
transplantes múltiplos de órgãos. Cerca de90% dos
transplantes realizados no ano passado foram múltiplos.
Em SP, 70% dos transplantes são realizados desta
forma. No RJ, metade dos transplantes entram nesta
categoria. Apenas nos dois primeiros meses deste ano
quinze doadores permitiram que 46 pessoas
continuassem vivendo”
Exercício 2
Busque na Internet, ou em jornais e revistas duas
reportagens que permitam identificar fatos em
determinados contextos.
Análise e Modelagem
Multidimensional
Dimensões e Medidas
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Dimensões
São os elementos, entidades, que participam de um
fato.
O “por” dos dados.
Considere o fato Compras em uma organização. Quais
são os elementos participantes deste fato?
Aplicação dos quatro pontos cardeais:
Quando a compra foi realizada.
Onde foi realizada.
Quem realizou.
O que foi comprado.
Dimensões
Identificamos então quatro dimensões envolvidas
nesse fato
Onde?
Quem?
Quando?
O que?
Compra
Dimensões
Por meio do arranjo das dimensões podese
analisar as informações sob diferentes
perspectivas.
Ex.: Quanto o comprador Felipe comprou de
produtos do tipo calçado em Setembro de 2009
nas lojas Tamanco de Ouro?
Dimensões de análise: quem, quando, o que, onde.
Esquema Estrela
Um DM é modelado para ambientes de bancos de
dados relacionais.
Esquema Estrela: A modelagem conceitual dos
fatos é o principal elemento de desenvolvimento de
um DM/ DW.
Conjunto de entidades Relacionadas.
As tabelas possuem atributos de identificação e
que estabelecem o relacionamento entre elas,
as chaves estrangeiras.
Esquema Estrela
A tabela fato é um grande relacionamento muitos
para muitos.
Aplicação de atributos às tabelas permite visualizar
um esquema estrela mais delineado.
Dimensão Tempo
Está presente em qualquer DM/ DW.
A dimensão tempo é uma hierarquia de espaços de
tempo. Ex:
Ano → Trimestre → Mês → Semana → Dia
Análise dos fatos são feitas sobre transações em um
espaço de tempo definido como grão de análise.
Grão de análise é a unidade de tempo na qual os dados
estão armazenados e podem ser sumarizados.
Dimensão Tempo
Exemplo: Dados agrupados por semana
Compras realizadas diariamente, porém o menor
grão de análise são compras semanais.
Valores são agregados hierarquicamente de
semana até ano:
Mês = conjunto de semanas
Trimestre = conjunto de meses
Ano = conjunto de trimestres
Dimensão Onde
“Competição de programação no Rio de Janeiro
marcado para as 10:00h. Quando faltavam 5
minutos para as 11:00h um locutor anunciou que
as provas começariam dali a 15 minutos”.
Onde?
Rio de Janeiro
Dimensão Onde
“Posse de Armínio Fraga no Banco Central agendada
para as 14:00h em Brasília. A cerimônia começou as 14:40h
porque o
Ministro da Fazenda custou a chegar”
Onde?
Brasília
Banco Central
Duas ocorrências da mesma entidade ou duas entidades
Onde?
Dimensão Onde
“Posse de Armínio Fraga no Banco Central agendada
para as 14:00h em Brasília. A cerimônia começou as 14:40h porque o
Ministro da Fazenda custou a chegar”
Onde?
Brasília
Banco Central
Duas ocorrências da mesma entidade ou duas entidades Onde?
Pode existir mais de uma dimensão relativa a um ponto cardeal
Atributos de Dimensão
Voltando ao fato compras
Atributos de Dimensão
Quais seriam os atributos da dimensão
fornecedor?
Nome do fornecedor
Área do fornecedor
Código do fornecedor
Qual a chave primária do fornecedor no modelo do
ambiente transacional?
E no Data Mart?
Atributos de Dimensão
Código do fornecedor é mantido como um atributo
da dimensão. Utilizaremos outra chave primária
para o DM.
Por quê?
Atributos de Dimensão
Código do fornecedor é mantido como um atributo
da dimensão. Utilizaremos outra chave primária
para o DM.
Por quê?
Manter as informações históricas.
Atributos de Dimensão
O que aconteceria se o fornecedor X mudasse para a
área 3?
Histórico do fornecedor não muda.
E o histórico das áreas?
Solução: inserir uma nova ocorrência de fornecedor, com
uma nova área.
Nova ocorrência no Data Mart tem chave primária
diferente.
O atributo referente à chave do ambiente transacional
(Código_fornecedor) é o mesmo.
Dimensões
Eliminando o problema de mudança de área do
fornecedor.
Chave Tempo
Chave Comprador
Tempo
Comprador
Chave Produto
Produto
Chave Área
Área
Chave Fornecedor
Fornecedor
Chave Fornecedor
Chave Tempo
Chave Comprador
Chave Área
Chave Produto
Compra
Dimensões
No ambiente transacional:
Relacionamento garante integridade.
No DM: entidade área e fornecedor não estão
relacionadas.
E a integridade?
Código Fornecedor
Código Área (FK)
Nome Fornecedor
Código Área
Nome Área
N
1
Atributos de Dimensão
Atributos da dimensão tempo:
Chave Tempo
Ano
Trimestre
Mês
Chave Comprador
Tempo
Comprador
Chave Produto
Produto
Chave Área
Área
Chave Fornecedor
Fornecedor
Chave Fornecedor
Chave Tempo
Chave Comprador
Chave Área
Chave Produto
Compra
Dimensões e Hierarquias
Quando carregamos dados para os fato compra as
transações são agrupadas pela granularidade
mínima de tempo.
Roteiro:
Agrupar registros por mês
Identificar o mês na tabela tempo
Obter a chave de tempo
Usar a chave de tempo na gravação de um
registro do fato.
Dimensões e Hierarquias
Informações são organizadas
hierarquicamente para fins de análise.
Exemplo: Informações sobre produtos de
uma empresa farmacêutica.
Como fica o modelo de dados?
Classe Terapêutica
Familia
Sub Familia
Apresentação
Produto
Modelo Floco de Neve
Modelo Floco de Neve (SnowFlake):
Dimensão Produto Normalizada
Entidades encadeadas
Classe Terapêutica Familia Sub Familia Apresentação
Produto
Vendedor
Tempo
Vendas
Modelo Floco de Neve
Modelo Floco de Neve:
Fácil de entender.
Para totalizar os valores é preciso realizar um
join entre as seis tabelas realizar cálculos de
totalização dos valores.
Não é a melhor solução em termos de
performance das consultas.
Modelo Estrela
Classe Terapêutica Familia Sub Familia Apresentação
Produto
Vendedor
Tempo
Vendas
Modelo Estrela
Muito usado na prática
Acesso direto entre a entidade da hierarquia e o
fato, com simples seleção de dados e
acumuladores de valores.
Dimesões e Hierarquias
Hierarquias múltiplas
Exemplo: Produtos de um supermercado podem
ser classificados em categorias: Alimento, Material
de Limpeza, etc.
Alimentos podem ter subcategorias.
Perecíveis, Não perecíveis
Dietéticos, Não dietéticos
Medidas
Data Marts são usados para consultar dados
históricos sumarizados por períodos de tempo, e
as mais variadas combinações de classificação de
uma informação.
Normalmente se deseja ver a evolução ou não de
valores numéricos, em um espaço de tempo.
Medidas
Medidas
“Os índices de criminalidade aumentaram no ano de
1999, 50% sobre os dois anos anteriores”
Índice: valor obtido sobre valores numéricos de
ocorrência de um fato.
Tipos de Medidas
Valores Aditivos
Podem ser aplicadas operações como soma,
subtração e média sobre estes valores.
Valores Não Aditivos
Não podem ser manipulados livremente.
Percentuais ou valores relativos
Operações matemáticas com valores aditivos
permitem a obtenção de valores não aditivos
Tipos de Medidas
Manter valores não aditivos ou apenas aditivos na tabela
de fatos?
– Geração de muitas colunas VS Performance.
Valores semiaditivos:
Possuem contagem dupla
Ex.: Controle de estoque totaliza mensalmente os
produtos estocados.
Produto pode permanecer em estoque durante dois
meses: Novembro e Dezembro de 2009.
Soma dos totais em estoque em mais de um período
contabilizariamais de uma vez os mesmos itens de
estoque.
Hierarquias de Medidas
Uma determinada medida pode possuir uma hierarquia de composição de
seu valor.
Ex.: Valor das Receitas é uma medida composta de outras e que pode
compor outras.
1. Receita Bruta = Valor de Venda – Custo de Venda
2. Lucro antes dos impostos = Receita Bruta – Despesas Corporativas
3. Lucro Líquido = Lucro antes dos impostos – (Lucro antes dos impostos * 3%)
Hierarquias de Medidas
Observe: impostos também é uma fórmula, mas é
uma fórmula não hierárquica, ou seja, não aplica
operador sobre outro nível hierárquico
Hierarquias de Medidas
Medidas existem em função de dimensões que
participam de um fato.
Vamos considerar a dimensão produto.
Cada valor das medidas está associado a um
produto.
Temos o produto participando do fato e os valores
das medidas que aparecem no problema.
Hierarquias de Medidas
Product Share: participação de um produto no total
de vendas da empresa.
– Product Share = 100 * (Lucro Líquido
(Produto) / Lucro Líquido)
Hierarquias de Medidas
É obtida a partir de uma operação sobre Lucro Líquido
Não está associada hierarquicamente com nenhuma outra medida
Mesmo nível hierárquico que Lucro Líquido.
Hierarquias de Medidas
Até aqui vinculamos as medidas do fato vendas
apenas a uma dimensão (produto).
Vamos adicionar uma nova dimensão: região.
É preciso conhecer os valores relativos a venda
por regionais de operação.
Até aqui consideramos as despesas como um
todo, corporativas.
Hierarquias de Medidas
Hierarquias de Medidas
Colocar medidas na entidade fato.
Manter todos os atributos na entidade?
Manter apenas os necessários para os cálculos?
Discutível...
Atributos de um Fato
Os atributos identificados são todos relativos ao
fato venda?
O usuário consegue montar uma planilha com
estes dados?
Se sim, os atributos são relativos ao fato
Chave Produto
Chave Região
Impostos
Venda Bruta
Custo de Venda
Despesa Corporativa
Despesa Marketing
Despesa Administrativa
Despesa Compras
Despesa Outras
Chave Região
Nome Região
Chave Produto
Descrição Produto
1
*
*
1
Análise e Modelagem
Multidimensional
Modelagem de um DW
-
Exemplo
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
O sistema transacional
Controla filmes por sala de cinema onde são
exibidos, tendo informações sobre a capacidade de
lotação de cada sala, localização regional no país,
assim como os registros de bilheteria de cada
sessão diária de cinema.
As necessidade executivas
Acompanhar a evolução do público e o valor
arrecadado em cada região do país, estado e
cidade, classificados por gênero de filme e sala de
cinema.
Avaliar a evolução de filmes por ator participante,
assim como por diretor.
Quais diretores atraem o maior público e em que
gênero está este público.
Quais períodos do ano possuem maior público por
gênero, ator e diretor, e geograficamente.
Identificando o fato
“Acompanhar a evolução do público e o valor
arrecadado em cada região do país, estado e
cidade, classificados por gênero de filme e sala de
cinema.”
Quem tem público?
Quem tem valor arrecadado?
Identificando o fato
“Acompanhar a evolução do público e o valor
arrecadado em cada região do país, estado e
cidade, classificados por gênero de filme e sala de
cinema.”
Quem tem público?
Quem tem valor arrecadado?
EXIBIÇÃO DE FILME
Identificando o fato
Em geral, fatos correspondem a relacionamento
muito para muitos no modelo de dados
transacional
Exibição_de_Filmes
Onde?
Quando? O que?
Quem?
Medidas
Quais as medidas do fato?
Quem são os valores numéricos de avaliação
do fato?
“Acompanhar a evolução do público e o valor
arrecadado em cada região do país, estado e
cidade, classificados por gênero de filme e sala de
cinema.”
Dimensões
Onde o filme é exibido?
“Acompanhar a evolução do público e o valor
arrecadado em cada região do país, estado e
cidade, classificados por gênero de filme e sala de
cinema.”
Duas dimensões relativas ao ponto cardeal onde.
Dimensões
O quê é exibido?
“Acompanhar a evolução do público e o valor
arrecadado em cada região do país, estado e
cidade, classificados por gênero de filme e sala de
cinema”
Filme, Agrupados por gênero
Dimensões
Quem participa do filme exibido?
“Avaliar a evolução de filmes por ator participante,
assim como por diretor.”
Dimensões
Quando?
Hierarquia de tempo:
ano – trimestre – mês – data
Modelo Estrela
Exibição_de_Filmes
Numero_de_pessoas
Valor_arrecadado
Chave_Tempo
Ano
Trimestre
Mes
Periodo
Dia
Chave_Cidade
Regiao
Estado
Cidade
Chave_Sala
Nome_Sala
Chave_Diretor
Nome_Diretor
Chave_Ator
Nome_Ator
Chave_Genero
Descricao
Modelo Estrela
Exibição_de_Filmes
Chave_Tempo(FK)
Chave_Cidade(FK)
Chave_Sala(FK)
Chave_Diretor(FK)
Chave_Ator(FK)
Chave_Genero(FK)
Chave_Genero
Descricao
Chave_Ator
Nome_Ator
Numero_de_pessoas
Valor_arrecadado
Chave_Tempo
Ano
Trimestre
Mes
Periodo
Dia
Chave_Cidade
Regiao
Estado
Cidade
Chave_Sala
Nome_Sala
Chave_Diretor
Nome_Diretor
Chave_Ator
Nome_Ator
Chave_Genero
Descricao
Sistema Transacional
Sistema usado até o presente momento pela
instituição, que cadastra os docentes, alunos e
gerenciam as suas notas, freqüências e matriculas.
Há ainda dados em cada gerencia acadêmica
referente a protocolos e entradas extras que
alunos podem vir a requisitar como casos
extraordinários.
As necessidade executivas
A produtividade de cada professor ao longo de vários períodos. A
produtividade é descrita da seguinte maneira:
(a) N° de alunos matriculados em disciplinas do professor por período
acadêmico
(b) N° de alunos aprovados / N° total de alunos
A produtividade de cada departamento: média da produtividade dos
seus professores.
O ranking dos professores mais produtivos período a período, por
curso e por departamento.
Produtividade disciplinas teóricas versus disciplinas práticas
Esquema ER
Disciplina: Código, Nome, No_creditos, Natureza {teoria, prática}
Professor: Matrícula, Nome, Titulação, Endereço
Aluno: Matrícula, Nome, Estado_civil, Sexo, Ano_ingresso
Curso: Código, Descrição, No_créditos, Duração_normal
Turma: Ano, Período, Sala
Departamento: Código, Nome
Esquema Estrela??
Fato?
Dimensão Onde?
Dimensão O que?
Dimensão Quem?
Dimensão Quando?
Esquema Estrela??
Fato? Produção escolar
Dimensão Onde? Curso, Departamento
Dimensão O que? Disciplina
Dimensão Quem? Professor
Dimensão Quando? Tempo – Ano/Periodo
Modelo Multidimensional
Ambientes para AMM
● ROLAP: Modelagem multidimensional, ambiente
transacional, consultas analíticas através de SQL
puro.
● HOLAP: Modelagem multidimensional, ambiente
transacional, consultas analíticas através de
ferramenta.
● OLAP: Modelagem multidimensional, ambiente
analítico, consultas analíticas através de
ferramenta.
Exemplo ROLAP: Criação e
Carga de Dimensões
TEMPO:
Criação: Create table Dim_Tempo (Id serial,
Semestre int, Ano int, Primary key(id));
Carga: Insert into DIM_TEMPO(semestre,
ano) Select V.ano, V.periodo from
(Select T.ano, T.periodo from (Select
DISTINCT ano,periodo from turma) T) V
Exemplo ROLAP: Criação e
Carga de Dimensões
CURSO:
Criação: Create table Dim_Curso(Id serial,
Nome VARCHAR(30), Primary key(id));
Carga: Insert into DIM_CURSO(nome)
Select V.nome from (Select DISTINCT
nome_curso “nome” from curso) V;
Exemplo ROLAP: Criação do
Fato
Create table Producao_Escolar(
Id_Tempo int not null,
Id_Prof int not null,
Id_Dept int not null,
Id_Dis int not null,
Id_Cur int not null,
Qtd_Alunos int,
Qtd_Alunos_Ap int,
Foreign key(Id_Tempo) references Dim_Tempo(ID),
Foreign key(Id_Prof) references Dim_Professor(ID),Foreign key(Id_Dept) references Dim_Dept(ID),
Foreign key(Id_Dis) references Dim_Disciplina(ID),
Foreign key(Id_Cur) references Dim_Curso(ID)
);
Exemplo ROLAP: Criação de
Views para Carga
CREATE VIEW QTD_ALUNOS_PERIODO AS
SELECT P.NOME, COUNT(*) "qtd_alunos", T.ANO, T.PERIODO,
DEP.NOME_DEP, C.NOME_CURSO, D.NATUREZA
FROM ALUNO_TURMA AT, TURMA T, PROFESSOR P, DISCIPLINA D,
DEPART DEP, CURSO C
WHERE
AT.COD_TURMA=T.COD_TURMA AND T.COD_PROF=P.MATRICULA
AND D.COD_CURSO=C.CODIGO AND T.COD_DISCIPLINA=D.CODIGO
AND P.COD_DEPT=DEP.CODIGO GROUP BY P.NOME, T.PERIODO,
D.NATUREZA, DEP.NOME_DEP, C.NOME_CURSO, T.ANO;
Exemplo ROLAP: Criação de
Views para Carga
CREATE VIEW QTD_ALUNOS_AP_PERIODO AS
SELECT P.NOME, COUNT(*) "qtd_alunos_ap", T.ANO, T.PERIODO,
DEP.NOME_DEP, C.NOME_CURSO, D.NATUREZA
FROM ALUNO_TURMA AT, TURMA T, PROFESSOR P, DISCIPLINA D,
DEPART DEP, CURSO C
WHERE
AT.COD_TURMA=T.COD_TURMA AND T.COD_PROF=P.MATRICULA AND
D.COD_CURSO=C.CODIGO AND T.COD_DISCIPLINA=D.CODIGO AND
P.COD_DEPT=DEP.CODIGO AND AT.NOTA>6 GROUP BY P.NOME,
T.PERIODO, D.NATUREZA, DEP.NOME_DEP, C.NOME_CURSO, T.ANO;
Exemplo ROLAP: Criação de
Views para Carga (ODS)
CREATE VIEW fato_view AS
SELECT a.nome, a.ano, a.periodo, a.nome_dep,
a.nome_curso, a.natureza, "qtd_alunos",
"qtd_alunos_ap" FROM qtd_alunos_periodo a,
qtd_alunos_ap_periodo b WHERE
a.nome=b.nome (+);
Exemplo ROLAP: Carga nos
Fatos
INSERT INTO producao_escolar
select t.id, p.id, de.id, d.id, c.id, "qtd_alunos",
"qtd_alunos_ap" from dim_curso c, dim_disciplina
d, dim_dept de, dim_tempo t, dim_professor p,
fato_view f where p.nome=f.nome and
periodo=semestre and t.ano=f.ano and
de.nome=f.nome_dep and d.natureza=f.natureza
and c.nome=f.nome_curso;
Exemplo ROLAP: Consultas
com SQL puro
A produtividade de cada professor ao longo de vários períodos. A
produtividade é descrita da seguinte maneira:
(a) N° de alunos matriculados em disciplinas do professor por
período acadêmico
(b) N° de alunos aprovados / N° total de alunos
SELECT p.nome "Professor", Ano, Semestre
"Periodo", qtd_alunos "Produtividade A" ,
qtd_alunos_ap/qtd_alunos "Produtividade B" from
producao_escolar pe, dim_professor p, dim_tempo
t where id_prof=p.id and id_tempo=t.id;
Exemplo HOLAP
Mesmo Banco de Dados com uma ferramenta de
criação de consultas automáticas:
PENTAHO
Exemplo - OLAP
Banco de dados e ambiente de consultas
diferenciado:
- Oracle BI
- SQL Server Analysis Services
Análise e Modelagem
Multidimensional
Operações OLAP
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Processamento Analítico
On-line
OLAP (Online Analytical Processing) é uma das
ferramentas de consulta (front-end) que servem
para apresentar respostas aos usuários do DW.
Um dos fatores importantes para o desempenho e
a qualidade do DW está relacionado com seu front-
end.
OLAP – Definição
OLAP (Processamento analítico on-line) é uma
“categoria da tecnologia de software que permite
que, analistas, gerentes e executivos obtenham, de
maneira rápida, consistente e interativa, o acesso a
uma variedade de visualizações possíveis da
informação” (INMON,1997);
OLAP – Definição
OLAP é: processamento de dados, dedicado ao
suporte à decisão, por meio de visualização de
dados agregados ao longo de várias dimensões
analíticas (tempo, espaço, categoria de produto,
quantidade vendida, preço...), armazenados em
BD dimensional.
OLAP – Objetivos
A tecnologia OLAP foi definida em decorrência da
forte necessidade de análises dos dados de forma
fácil e flexível, analisando múltiplas visões do
negócio em diferentes níveis de detalhe,
comparações e tendências.
OLAP – Objetivos
Ajudar analistas e gerentes a sintetizarem
informações sobre a empresa através de
comparações, visões personalizadas, análise
histórica e projeção dos dados em vários cenários
Operações OLAP
Operações Drill
Utilizam navegação nos dados, modificando o
nível de granularidade da consulta.
Drill down/ Roll up (Drill up)
Drill Across
Drill Throught
Slice and Dice
Navegar nas dimensões
Drill Down e Roll Up
São operações para movimentar a visão dos dados ao
longo dos níveis hierárquicos de uma dimensão:
Drill down:
O usuário navega de um nível mais baixo de detalhe
até um nível mais alto (diminui-se a granularidade)
Roll up:
O usuário navega de um nível mais alto de detalhe até
o nível mais baixo (aumenta-se a granularidade).
Os caminhos de navegação são determinados pelas
hierarquias de dimensão.
Drill Down e Roll Up
Drill Down: aumentar o nível de detalhe, ir para o menor grão.
Roll Up: diminuir o nível de detalhe, subir para o maior grão.
Drill Across
O Drill Across ocorre quando o usuário pula um
nível intermediário dentro de uma mesma
dimensão.
Por exemplo: a dimensão tempo é composta
por ano, semestre, trimestre e mês.
O usuário estará executando um Drill Across
quando ele passar de ano direto para mês.
Drill Throught
O Drill Throught ocorre quando o usuário passa de
uma informação contida em uma dimensão para
uma outra.
Por exemplo: Estou na dimensão de tempo e
no próximo passo começo a analisar a
informação por região.
Slice and Dice
Operações para realizar navegação por meio dos
dados na visualização por meio de um cubo.
Slice
Corta o cubo, mas mantém a mesma
perspectiva de visualização dos dados.
Funciona como um filtro restringindo uma
dimensão à somente algum ou alguns de seus
valores
Slice and Dice
Dice
Mudança de perspectiva da visão
multidimensional, como se o cubo fosse girado.
Permite descobrir comportamentos e
tendências entre os valores das medidas
analisadas, em diversas perspectivas
Slice (exemplo)
Dice (exemplo)
Análise e Modelagem
Multidimensional
Aspectos Avançados de
Modelagem para DW
Prof. Thiago Affonso de M. N. Viana
tamnv@recife.ifpe.edu.br
Esquema Estrela
Esquema Estrela
Tabelas Fato
Tabelas Dimensão
Um modelo dimensional pode ser representado por
uma ou mais tabelas de fatos, relacionadas com
tabelas de dimensões. Entretanto, a visão de um
esquema por vez torna o modelo mais claro.
Tabelas Secundárias
Qual a produção escolar por titulação de
professores?
Quais as disciplinas que mais reprovam alunos?
Qual das provas tem notas mais baixas? Primeira,
Segunda, Reposição, Final?
Qual o “product share” da produtividade dos
departamentos/cursos/disciplinas?
– Cálculos que aumentam o processamento das
consultas
Tabelas Secundárias
Dados Secundárias
– Dimensões Secundárias
– Fatos Secundários
– Medidas Secundárias
Agregados
– Formas de acelerar as consultas a partir de
novas sumarizações
• Ex: Agregado apenas de ano
Tabelas Secundárias
Tabelas Secundárias
Controlar crescimento do banco de dados pelas
tabelas secundárias vs. conservar os benefícios!
Esparsidade do DW
Em um DW, em geral a tabela de fatos primária é
bastante esparsa, isto é, há muito menos valores
da chave composta do que o produto cartesiano
dos valores das chaves de cada dimensão.
Isto é bom porque, do contrário, o tamanho da
tabela primária tenderia ao "infinito"!
Esparsidade do DW
Dimensão Tempo: 2 anos x 365 dias = 730 dias
Dimensão Loja: 300 lojas
Dimensão Produto: 30.000 produtos
Número de registros da tabela de fatos:
730 x 300 x 30.000 = 6570 x 10 registros⁶
Porém, dos 30.000 produtos em estoque, somente
3.000 aproximadamente (10%) são
comercializados diariamente, por loja.
Poda e Arrumação
Para montar o esquema estrela é necessário
descobrir quais os atributos do MER que serão
utilizados
Producao_escolar
Qtd_alunos Ano
Turma
Qtd_alunos_ap
Período
ProfessorDisciplina
Matricula NomeTitulação
Endereço
Código
Nome
Nº. de créditos
Natureza
Nota
Departamento
Código
Nome
Poda
Remoção de campos desnecessários ao modelo:
- Professor: Tiramos endereço, matricula e deixamos apenas
nome e titulação.
- Turma: Tiramos a nota, e deixamos apenas o ano e o período,
e a chamamos de tempo.
- Departamento: Tiramos o código e deixamos apenas o nome.
- Disciplina: Apenas deixamos natureza.
Poda
Producao_escolar
Qtd_alunos Ano
Tempo
Qtd_alunos_ap
Período
Professor
Disciplina
Nome
Titulação
Natureza
Departamento
Nome
Arrumação (ou enxerto)
Se necessário, pode ser preciso criar campos,
dimensões, modificar relacionamentos e assim
“arrumar” e “enxertar” os dados de um modelo.
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
Slide 24
Slide 25
Slide 26
Slide 27
Slide 28
Slide 29
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
Slide 24
Slide 25
Slide 26
Slide 27
Slide 28
Slide 29
Slide 30
Slide 31
Slide 32
Slide 33
Slide 34
Slide 35
Slide 36
Slide 37
Slide 38
Slide 39
Slide 40
Slide 41
Slide 42
Slide 43
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
Slide 24
Slide 25
Slide 26
Slide 27
Slide 28
Slide 29
Slide 30
Slide 31
Slide 32
Slide 33
Slide 34
Slide 35
Slide 36
Slide 37
Slide 38
Slide 39
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
Slide 24
Slide 25
Slide 26
Slide 27
Slide 28
Slide 29
Slide 30
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13