Modelação Dimensional 4

Documentos relacionados
Uma peça estratégica para o seu negócio

1 Contextualização 3 2 Administração do Joomla 5 3 Painel de controlo Menu sítio Menu utilizadores Outras funcionalidades 8 4

INSCRIÇÃO ON- LINE REVEZAMENTOS A PARTIR DE 2015 INDICADO PARA TÉCNICOS

Capítulo 4 Gerenciamento de Memória

MODELAGEM E SIMULAÇÃO

Sistemas de Arquivos. André Luiz da Costa Carvalho

Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade

Mantis. Solicitando suporte. Manual do Cliente

ESTUDO DE VIABILIDADE. Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos

CEFET.PHB - PI. Plano de Ensino. Banco de Dados. Plano de Ensino. Plano de Ensino. Plano de Ensino - Conteúdo. Plano de Ensino - Conteúdo

Cópia de Segurança e Recuperação Manual do utilizador

Data Warehouse. Debora Marrach Renata Miwa Tsuruda

Tópicos Avançados Business Intelligence. Banco de Dados Prof. Otacílio José Pereira. Unidade 10 Tópicos Avançados Business Inteligence.

Guia de utilização da notação BPMN

MANUAL DE ORIENTAÇÃO SISTEMA CCA

Para os demais formatos, o relatório será gerado mas virá com configurações incorretas.

Folhas de Cálculo Excel Ficha Prática 6 Pág. 1 de 7

Banco de Dados. Um momento crucial na organização dos dados é a forma com que cadastramos estes dados, a estrutura de armazenamento que criamos.

Fundamentos da Análise Multidimensional

Sistema representação G3.ss. Tabela de Clientes. Tabela de Representantes. Tabela de Fornecedores

GimobWEB Plataforma de gestão imobiliária

SAD. Paulo Silva, Rodolfo Ribeiro, Vinicius Tavares

Complemento I - Noções Introdutórias em Data Warehouses

DATA WAREHOUSE. Introdução

(Capitais e Interior) (Demais Localidades) (Capitais e Interior) Golden Fone (SAC)

Business Impact Analysis

Manual Sistema AtecSoftware

CRM Migration Call Center - SAC Fevereiro/13

Operação de Computadores e Sistemas. Trabalho Terceiro Bimestre

SEJA RESPONSÁVEL EVITE ATRASOS E MULTAS FACILITE A SUA VIDA! 1ª Fase - 1 a 31 de Março de 2014, para rendimentos das categorias A e H;

PLANIFICAÇÃO ANUAL GESTÃO DE TEMPOS. CURSO: Curso Profissional de Secretariado 10º ano. DISCIPLINA: Tecnologias da Informação e Comunicação

Manual de Utilizador. Caderno. Recursos da Unidade Curricular. Gabinete de Ensino à Distância do IPP.

Mas para iniciar o uso do CRM é necessário efetuar algumas configurações em primeiro lugar.

Atualizações da Versão Introdução... 2 Conhecendo o Serviço... 3 Ações dos botões das telas... 4

Núcleo de Pós Graduação Pitágoras

EXCEL TABELAS DINÂMICAS

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores

Conceitos Básicos Sobre BDs. Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes

Gestão de Ativos. Manual do Usuário. Treinamento Fase 1 (TRN 01)

SISTEMA DE SERVIÇOS DE INFRA-ESTRUTURA DA UFRGS

Kimball University: As 10 Regras Essenciais para a Modelagem de Dados Dimensional

implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Fernando Ramos, Nuno Neves, Sistemas Operativos,

Tabelas vista de estrutura

HD 100. P Cobertor elétrico Instruções de utilização. BEURER GmbH Söflinger Str Ulm (Germany)

CONDIÇÕES GERAIS DO OUROCAP 20 Anos. SOCIEDADE DE CAPITALIZAÇÃO: Brasilcap Capitalização S.A. CNPJ: /

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum

2. Conceitos e Arquitetura de Bancos de Dados

COTAÇÃO DE COMPRAS COM COTAÇÃO WEB

Manual Sistema Débito Web Adsis/Disao Criado em 23/04/2012

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

FERRAMENTAS DA QUALIDADE

SUPORTE TÉCNICO EBS. Envie-nos suas dúvidas e/ou sugestões para

SISTEMA BRENA DE AUTOMAÇÃO COMERCIAL

Banco de Dados I. Construindo modelos de dados confiáveis

file:///c:/documents and Settings/Mauro/Desktop/Manuais_e_cursos/m...

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

INFORMAÇÕES AO DESENVOLVEDOR (ERP)

MANUAL DO SISTEMA. Versão 6.07

Sistemas de Informação

Controle e execute tudo o que está relacionado com Pessoal e Salários com um software eficaz e preparado para completar todas as tarefas nesta área

Implantação do sistema Condominium

Astra LX Registro de Pacientes e Médicos Guia para o acesso aos registros de Pacientes e Médicos e eliminação de dados duplicados no AstraLX

Gestão dos Pequenos Negócios

FEDERAÇÃO PORTUGUESA DE TIRO

Planejamento Estratégico de TI. Prof.: Fernando Ascani

GARANTIA LIMITADA DO FABRICANTE NOKIA PARA NOKIA COM WINDOWS PHONE

Manual de Recibos. Manual de Recibos

Esse produto é um produto composto e tem subprodutos

Boletim. Contabilidade Internacional. Manual de Procedimentos

Microsoft Access INTRODUÇÃO. Sumário INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO. O que é Banco de Dados?

SECRETARIA DE ESTADO DA EDUCAÇÃO DE SANTA CATARINA PONTO SECULLUM 4 SISTEMA DE CONTROLE DE PONTO MANUAL PARA A GERÊNCIA DE GESTÃO DE PESSOAS

Microsoft Access Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan

Parametrização Itens para Movimentação

Data Warehousing e OLAP

Acompanhamento e Execução de Projetos

Modelo Relacional. 2. Modelo Relacional (Lógico)

Resumo dos Resultados Globais

Sistemas Operacionais Arquivos. Carlos Ferraz Jorge Cavalcanti Fonsêca

Cópia de Segurança e Recuperação Manual do utilizador

Estatística no EXCEL

Lâmina de informações essenciais sobre o Fundo SUMITOMO MITSUI MASTER PLUS FI REF DI CREDITO PRIVADO LONGO PRAZO

Data Warehousing. Leonardo da Silva Leandro. CIn.ufpe.br

O Processo de Engenharia de Requisitos

REAL PPR Condições Gerais

MANUAL DE PROCEDIMENTOS PLATAFORMA DE INSCRIÇÕES ONLINE

GUIA PRÁTICO SUBSÍDIO DE DESEMPREGO PARCIAL

Klavier Tecnologia da Informação. Klavier Sistemas Integrados. Contas a Pagar

Portal do Projeto Tempo de Ser

SECRETARIA DE ESTADO DA SAÚDE

APLICAÇÃO SICAFE INSTRUÇÕES

DESENVOLVENDO O SISTEMA

Adriano Maranhão BUSINESS INTELLIGENCE (BI),

Transcrição:

INTEGRAÇÃO E PROCESSAMENTO ANALÍTICO DE INFORMAÇÃO Modelação Dimensional 4 António Manuel Silva Ferreira UNIVERSIDADE DE LISBOA FACULDADE DE CIÊNCIAS DEPARTAMENTO DE INFORMÁTICA asfe@di.fc.ul.pt

Sumário Modelação dimensional Hierarquias e tabelas de ponte Dimensões mulv- valor Tipos de tabelas de factos Recomendações de modelação Regras a seguir Erros a evitar Carregamento do data warehouse Data staging area Sistema ETL Manutenção de chaves subsvtutas 2

Hierarquias de Atributos Relações hierárquicas de Vpo muitos- para- um são habituais Ex. muitos meses compõem um ano, dias compõem um mês Hierarquias desempenham papéis importantes Navegação no cubo de dados Permitem operações de drill- down e roll- up Ex. encomendas por ano, mês, dia, e país, cidade, freguesia, Pré- cálculo de valores agregados para cada nível hierárquico Agregações armazenadas em disco e usadas automavcamente nos relatórios Ex. totais e médias por ano, mês, e dia Desafios Modelação adequada ao presente e flexível para mudanças futuras Limpeza e manutenção dos dados de hierarquias 3

Tipos de Hierarquias de Atributos Profundidade fixa Todos os níveis da hierarquia têm sempre valores De uso generalizado e fáceis de entender Exemplos Anos têm sempre meses, e meses têm sempre dias ConVnentes têm sempre países e países têm sempre cidades Profundidade variável Alguns níveis podem não estar preenchidos Para relações hierárquicas mais complexas Exemplos Árvore genealógica de uma família Organograma com diferente número de níveis consoante o departamento 4

Modelação de Hierarquias Fixas Todos os níveis da hierarquia numa tabela desnormalizada Decisores dishnguem hierarquias em atributos da dimensão Atributos de uma mesma hierarquia devem estar seguidos Permite várias hierarquias em simultâneo na mesma tabela Ex. Produto(, Categoria MarkeVng, Subcategoria MarkeVng, Categoria Finanças, Subcategoria Finanças, ) Cada nível da hierarquia numa tabela separada (snowflaking) Antes: Produto (, Categoria Produto, Subcategoria Produto) Depois: Produto (, psubcategoria) Subcategoria (ID, Subcategoria Produto, pcategoria) Categoria (ID, Categoria Produto) Bifurcações, apenas úteis em dimensões monstras Torna interrogações mais complexas e morosas 5

Modelação de Hierarquias Variáveis Possível com chave estrangeira para a própria tabela de dimensão Ex. muitos empregados têm o mesmo chefe 1 2 3 4 5 ID Nome Empregado OEmpregadoChefe 1 Presidente 2 Diretor A 1 3 Diretor B 1 4 Empregado C 2 5 Empregado D 2 Problemas Níveis hierárquicos diferentes misturados na tabela de factos Chave estrangeira para empregado pode referir o presidente, diretores, Cálculo de valores agregados por nível hierárquico inviável Interrogações muito complexas e/ou com comandos SQL proprietários 6

Tabelas de Ponte 1 Permitem navegar em hierarquias de profundidade variável Ex. saber quem é chefe de quem na dimensão empregado Ex. somar salários dos empregados chefiados por um diretor Guardam caminhos 1. Entre cada nível e o próprio nível (distância zero) 2. Entre cada nível e todos os níveis descendentes Atributos específicos Nível ascendente (1) Nível descendente (2) Distância entre níveis (1) Ascendente no topo? (S) Descendente na base? (N) Empregado 3 Empregado 2 Empregado 1 Empregado 4 Empregado 5 7

Tabelas de Ponte 2 Exemplo: hierarquia de clientes (estado, ministérios, repartições, ) Cliente 2 Cliente 3 Cliente 1 Cliente 5 Cliente 4 Cliente 6 Cliente 7 Ascendente Descendente Distância Topo? Base? Cliente 1 Cliente 1 0 Sim Não Cliente 1 Cliente 2 1 Sim Não Cliente 1 Cliente 3 2 Sim Sim Cliente 2 Cliente 2 0 Não Não Cliente 2 Cliente 3 1 Não Sim Cliente 3 Cliente 3 0 Não Sim Dimensão cliente tem 7 linhas Ponte tem muitas mais linhas, uma para cada caminho entre níveis Linhas ponte = (nível de 1 a profundidade) nós nível nível = 1 1 + 3 2 + 3 3 = 16 8

Tabelas de Ponte 3 Tabela de ponte colocada entre tabelas de factos e de dimensão Factos e dimensão não precisam de ser alterados Uso da tabela de ponte é opcional ConVnuaria a ser possível associar factos à dimensão Mas deixaria de ser possível navegar na hierarquia Exemplo Honorários cobrados aos clientes descendentes de um outro cliente Dimensão Cliente ID Cliente (PK) Nome 1. Fixar ID do cliente pai e juntar com tabela de ponte Tabela de Ponte Ascendente (FK) Descendente (FK) Distância Topo? Base? Tabela de Factos Cliente (FK) Honorários 2. Juntar resultado de 1 com factos e somar honorários 9

Dimensões MulH- Valor Dimensões podem ter vários valores para um mesmo facto Aparentemente grão deveria ser mais fino, até um só valor por facto Mas existem situações legívmas para dimensões mulv- valor Exemplo: cobrança de diagnósvcos médicos No mesmo ato médico ficam registados vários diagnósvcos Alguns levados pelo próprio paciente, pelo que não podem ser cobrados Peso indica contribuição (%) desse diagnósvco para o total cobrado Total de pesos dos diagnósvcos de um grupo deve ser 100% Tabela de Factos Grupo DiagnósHcos Tabela de Ponte DiagnósHco ID Grupo Grupo Diags. (FK) ID DiagnósVco Paciente (FK) Nome Grupo DiagnósVco (FK) Nome Grupo Diags. (FK) Peso Tipo QuanVa cobrada 10

Tipos de Tabelas de Factos Transações Registam eventos que ocorreram em determinados momentos Ex. venda de produto a um cliente, numa loja, numa data Instantâneos periódicos (periodic snapshots) Guardam desempenho acumulado em períodos fixos e regulares Dados novos são inseridos e algumas medidas podem valer zero Ex. saldo, comissões, e juros em janeiro, fevereiro, março, Instantâneos cumulavvos (accumula:ng snapshots) Acompanham um processo recorrente, mas de duração variável Etapas previsíveis, cumpridas em datas imprevisíveis Dados novos através de inserções e atualizações de linhas Ex. ciclo de vida de produto, desde a encomenda até à eventual devolução 11

Exemplos de Tipos de Tabelas de Factos Transações Data (FK) Produto (FK) Loja (FK) Cliente (FK) Empregado (FK) Promoção (FK) ID Transação (DD) QuanVdade Preço Venda de produtos Instantâneos Periódicos Mês (FK) Conta (FK) Agência (FK) Cliente (FK) Saldo Comissões Cobradas Juros Creditados Número Transações Saldos bancários mensais Instantâneos CumulaHvos Data Encomenda (FK) Data Envio (FK) Data Entrega (FK) Data Pagamento (FK) Data Devolução (FK) Loja (FK) Cliente (FK) Produto (FK) Estado Encomenda (FK) QuanVdade Preço Ciclo de vida de produto 12

Comparação de Tipos de Tabelas de Factos! Transações Instantâneos Periódicos Instantâneos CumulaHvos Período representado Ponto no tempo Intervalos fixos e regulares Intervalo indeterminado Grão Uma linha por transação Uma linha por período Uma linha por ciclo de vida Carregamento de factos Inserções Inserções Inserções e atualizações Atualização de factos Inexistente Inexistente Quando houver avvidade Dimensão data Data da transação Data do fim do período Várias datas do ciclo de vida Factos AVvidade de transações Desempenho no período Desempenho ao longo do ciclo 13

Regras da Modelação Dimensional 1 1. Carregar dados atómicos nas tabelas de dimensões Possibilitam todo o Vpo de agregações, mesmo as mais imprevisíveis 2. Estruturar modelos de dados em torno dos processos de negócio Cada processo de negócio representa eventos mensuráveis 3. Referir dimensão data em cada tabela de factos Factos (agregados ou não) vão acontecendo ao longo do tempo 4. Usar mesmo grão para todas as linhas da tabela de factos Mistura de factos com diferentes grãos causa confusão 5. Resolver relações muitos- para- muitos em tabelas de factos Suportadas naturalmente pelas múlvplas chaves estrangeiras 14

Regras da Modelação Dimensional 2 6. Resolver relações muitos- para- um em tabelas de dimensões Manter atributos dependentes entre si na mesma tabela 7. Guardar valores descrihvos em tabelas de dimensões De preferência os usados em filtros e cabeçalhos de relatórios 8. Usar chaves subshtutas em tabelas de dimensões Maior flexibilidade, rapidez, e poupança de espaço em disco 9. Criar dimensões conformadas, válidas em toda a organização Permitem combinação de dados de várias tabelas de factos 10. Compreender equilíbrio entre requisitos e realidade Para apoiar efevvamente a tomada de decisão 15

Erros a Evitar na Modelação Dimensional 1 12. Deixar atributos de texto na tabela de factos Tabela de factos guarda medidas numéricas e chaves estrangeiras Atributos de texto devem ser colocados em tabelas de dimensões 11. Evitar atributos descrivvos nas tabelas de dimensões Espaço poupado não compensa perda de inteligibilidade Cada código numérico deve ter tradução textual 10. Distribuir hierarquias por várias tabelas de dimensões Decisores reconhecem níveis hierárquicos numa mesma tabela Mesma tabela pode inclusivamente conter várias hierarquias 9. Lidar tardiamente com dimensões de mudança lenta Evitar que carregamento de dados escreva por cima dos existentes Manutenção do histórico é função essencial dos data warehouses 16

Erros a Evitar na Modelação Dimensional 2 8. Usar chaves naturais em tabelas de dimensões Cria dependência com sistema operacional e pode impedir histórico Dimensões devem ser idenhficadas por chaves subshtutas 7. Adicionar dimensões antes de escolher o grão dos factos Factos registados no nível de detalhe do negócio Dimensões com grão diferente dos factos causam confusão e erros 6. Criar modelo dimensional baseado num relatório específico Relatório é apenas uma vista parvcular sobre os dados Modelo dimensional assenta nos processos de medição do negócio 5. Misturar linhas com vários grãos na mesma tabela de factos Factos com subtotais e outros cálculos auxiliares causam erros Usar tabelas diferentes para factos com grãos dishntos 17

Erros a Evitar na Modelação Dimensional 3 4. Deixar dados atómicos apenas na data staging area Decisores não vão procurar dados na data staging area Dimensões e factos devem ser registados com o máximo de detalhe 3. Evitar agregados pré- calculados para melhorar desempenho Mais hardware reduz tempo de resposta das interrogações Mas agregados pré- calculados têm melhor relação custo/bene_cio 2. Falhar conformação de factos Mesma medida deve ter representação coerente em vários processos Permite combinação de mesmas medidas de várias tabelas de factos 1. Falhar conformação de dimensões Erro mais grave: impede expansão do data warehouse! Conformação de dimensões permite relatórios transdepartamentais 18

Matérias Cobertas 1 Sistemas de apoio à decisão e data warehouses Dados operacionais e de apoio à decisão Sistemas OLTP e OLAP Estrutura básica de um data warehouse Bases de dados federadas Modelação dimensional Obtenção de dimensões Metáfora do cubo de dados Tabelas de factos e de dimensões Grão da tabela de factos Processo de modelação dimensional 19

Matérias Cobertas 2 Interrogações OLAP em SQL Abordagem clássica Extensões OLAP no SQL- 99 Modelação dimensional Chaves primárias e dimensões degeneradas Dimensão data e hierarquias fixas Chaves subsvtutas Snowflaking Mais sobre modelação de factos Medidas adivvas e semi- adivvas Tabelas de factos sem factos 20

Matérias Cobertas 3 Dimensões de mudança lenta Técnicas para registar mudanças em dimensões Tipos 1, 2, 3, e híbridas Role- playing de dimensões Dimensões conformadas Bus matrix Relatórios transdepartamentais Gestão de dados mestre Dimensões muito grandes Bifurcações (outriggers) Mini- dimensões 21

Matérias Cobertas 4 Tabelas de ponte Hierarquias variáveis Dimensões mulv- valor Tipos de tabelas de factos Transações Instantâneos periódicos Instantâneos cumulavvos Regras da modelação dimensional Erros a evitar 22

Carregamento do Data Warehouse Data staging area Situada entre os sistemas operacionais e a data presenta:on area Área de trabalho para pré- processar dados em bruto Operações picas: limpar, fundir duplicados, combinar, transformar, Data presenta:on area Guarda dados limpos, com apresentação simples e inteligível Inclui índices e agregados pré- calculados para reduzir tempos resposta Extração periódica de dados Limpeza e transformação Carregamento de dados Sistemas operacionais Data staging area Data presenta:on area Data warehouse 23

Sistema ETL Sistema extrac:on- transforma:on- load (ETL) Consome cerca de 70% do esforço de construção do data warehouse Kimball idenvfica 34 subsistemas disvntos Extração (extrac:on) Analisar domínio e regras de integridade das colunas Detetar alterações nos dados, aplicar filtros, ordenar dados Transformação (transforma:on) Limpar dados, usar dicionários para correções automávcas Tratar exceções, fundir duplicados, conformar valores Carregamento (load) Manter chaves subsvtutas, lidar com dimensões de mudança lenta Preencher hierarquias, pré- calcular valores agregados 24

Manutenção de Chaves SubsHtutas 1 Tabelas de correspondência (cross- reference tables) Fazem a correspondência entre chaves naturais e chaves subshtutas Cada dimensão tem a sua tabela de correspondência Guardadas de forma persistente na data staging area Deteção de alterações Novos registos nos sistemas operacionais geram novas chaves substitutas Alterações detetadas através da comparação de valores de CRC Cyclic redundancy code (CRC): uma síntese numérica Muito usada na deteção de erros em dados Coluna extra para CRC em cada linha de dados Comparação coluna a coluna pouco eficiente Só aplicada depois de detetada a alteração através do CRC AlternaVvas: coluna com data de alteração, database log scrapping 25

Manutenção de Chaves SubsHtutas 2 Dimensões de mudança lenta de Hpo 1 Tabela de correspondências não guarda histórico Chave subsvtuta refere sempre a versão mais atual da chave natural Dimensões de mudança lenta de Hpo 2 Guardadas todas as chaves subsvtutas para cada chave natural Necessários campos extra para período e indicação de validade Chave SubsHtuta Chave Natural Descrição Início Validade Fim Validade Em Vigor CRC 123 MG2 Magalhães 01.01.2010 29.03.2010 3A03C9DD 456 MG2 Magalhães 30.03.2010 x 2077CCED 26

Manutenção de Chaves SubsHtutas 3 Chave natural na TC? Sim Tipo Dados Sim Tipo 2 de mudança mudaram? lenta? Não Não Tipo 1 Insere linha na TC Não faz nada Atualiza linha na TC Atualiza e insere linha na TC Insere linha na TD Atualiza linha na TD Atualiza e insere linha na TD Legenda: TC = Tabela de Correspondência; TD = Tabela de Dimensão 27

Bibliografia Ralph Kimball e Margy Ross, The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling, Wiley, 2002 Capítulos 5, 6, 13, 15, 16 Ralph Kimball e Margy Ross, The Kimball Group Reader: Relentlessly Prac:cal Tools for Data Warehousing and Business Intelligence, Wiley, 2010 Secções 1.10, 6.7, 6.8, 10.1 10.4, 10.6 10.9, 11.2, 11.4, 11.17, 11.19 28

Extra IntegraHon Services no SQL Server Fluxos de Dados Fluxo de Controlo 29