aulas de 1 - 9 - analise e modelagem multidimensional
TRANSCRIPT
Análise e Modelagem Multidimensional
Prof. Thiago Affonso de M. N. Viana [email protected]
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 [email protected]
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 Registros Assunto
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”.
ODSDW
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 comportamentoTendênciasCrescimento – 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.
AtividadeUma 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 [email protected]
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:
DataHora
VendedorValor
MêsVendedor
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 [email protected]
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
Tempo11 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
Tempo11 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
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 de 90% 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 [email protected]
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 FornecedorChave Tempo
Chave CompradorChave Á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 ÁreaN
1
Atributos de Dimensão
Atributos da dimensão tempo:
Chave Tempo
AnoTrimestre
Mês
Chave Comprador
Tempo
Comprador
Chave Produto
Produto
Chave Área
Área
Chave Fornecedor
Fornecedor
Chave FornecedorChave Tempo
Chave CompradorChave Á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
contabilizaria mais 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 ProdutoChave Região
ImpostosVenda Bruta
Custo de VendaDespesa CorporativaDespesa Marketing
Despesa AdministrativaDespesa ComprasDespesa Outras
Chave Região
Nome Região
Chave Produto
Descrição Produto1
*
*
1
Análise e Modelagem Multidimensional
Modelagem de um DW -
ExemploProf. Thiago Affonso de M. N. Viana
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_pessoasValor_arrecadado
Chave_Tempo
AnoTrimestre
MesPeriodo
DiaChave_Cidade
RegiaoEstadoCidade
Chave_Sala
Nome_SalaChave_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
DescricaoChave_AtorNome_Ator
Numero_de_pessoasValor_arrecadado
Chave_Tempo
AnoTrimestre
MesPeriodo
Dia
Chave_Cidade
RegiaoEstadoCidade
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 ERDisciplina: 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 [email protected]
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 [email protected]
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 Nome
Titulação
Endereço
Código
Nome
Nº. de créditos
Natureza
Nota
Departamento
CódigoNome
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.