Data Warehousing e OLAP



Documentos relacionados
Tópicos Avançados de Bases de Dados

Tópicos Avançados de Bases de Dados, 2004/2005 Instituto Politécnico da Guarda

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

- A crescente necessidade de sistemas inteligentes e de aquisição de conhecimento levaram à necessidade de implementação de Data Warehouses.

Fundamentos da Análise Multidimensional

Curso de Engenharia de Sistemas e Informática - 5º Ano. Ficha T. Prática n.º 1

Data Warehouse. Debora Marrach Renata Miwa Tsuruda

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

DATA WAREHOUSE. Introdução

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

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

SAD orientado a DADOS

DATA WAREHOUSE. Rafael Ervin Hass Raphael Laércio Zago

Data Warehouse Granularidade. rogerioaraujo.wordpress.com - rgildoaraujo@gmail.com 1

TÓPICOS AVANÇADOS EM ENGENHARIA DE SOFTWARE

Capítulo 2 Data Warehousing

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

Banco de Dados - Senado

1- Identifique para cada questão abaixo, se o enunciado se refere a View, Stored Procedures, Trigger ou Function. Apenas um por questão.

LISTA DE EXERCÍCIOS. 1. Binário: Bit: Menor unidade de dados; dígito binário (0,1) Byte: Grupo de bits que representa um único caractere

Mineração e Armazenamento de Dados

Checklist de Projeto de Data Warehouse

Chapter 3. Análise de Negócios e Visualização de Dados

Definição do Conceito. Instalação e Gestão de Redes Informáticas. Gestão e organização da informação

Identificar as mudanças que acontecem na forma e no uso de apoio à decisão em empreendimentos de e-business. Identificar o papel e alternativas de

PHC Serviços CS. A gestão de processos de prestação de serviços

Projecto Final de Licenciatura Engenharia Informática - Computadores e Sistemas. elaborado por: Filipe Manuel Marques Pinto Pinheiro

ISEP. Instituto Superior de Engenharia do Porto. Análise de Sistemas Informáticos

Módulo 4. Construindo uma solução OLAP

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

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

Sistemas de Apoio à Decisão (SAD) - Senado

Banco de Dados, Integração e Qualidade de Dados. Ceça Moraes cecafac@gmail.com

Modelação Multidimensional

Uma análise de ferramentas de modelagem e gerência de metadados aplicadas ao projeto de BI/DW-UFBA

PHC Imobilizado CS BUSINESS AT SPEED

ADMINISTRAÇÃO DOS RECURSOS DE DADOS

Projeto de Data Warehousing sobre Informações em Saúde para dar Suporte a Análise de Faturamento Hospitalar

Sistema de Informação do Cadastro Geométrico da Propriedade Rústica

Software PHC com MapPoint

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados

Fases para um Projeto de Data Warehouse. Fases para um Projeto de Data Warehouse. Fases para um Projeto de Data Warehouse

Modelando um Data Warehouse GRIMALDO OLIVEIRA

Sistema de Informação Gerencial baseado em Data Warehouse aplicado a uma software house

Objectivos de aprendizagem

Modelagem Multidimensional: Esquema Estrela

Data Warehouse Processos e Arquitetura

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO

Arquitetura física de um Data Warehouse

1 Descrição sumária. Varajão, Trigo e Barroso, O Gestor de Sistemas de Informação nas grandes empresas portuguesas, Computerworld, 2011.

Criação e uso da Inteligência e Governança do BI

Função dos Sistemas de Bases de Dados Visão dos dados Modelos de dados Linguagem de Definição de Dados Linguagem de Manipulação de Dados Gestão de

MIG - Metadados para Informação Geográfica

Imobilizado 2008 Imobilizado Imobilizado 2008

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Capítulo. Sistemas de apoio à decisão

Escola de Condução Colinas do Cruzeiro

Procedimento de Gestão PG 01 Gestão do SGQ

Sistemas de Bases de Dados

BUSINESS INTELLIGENCE Prof. Fabio Purcino

Sou o professor Danilo Augusto, do TIParaConcursos.net, e lá costumo trabalhar temas relacionados a Redes de Computadores e Sistemas Operacionais.

No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o

Modelo de Domínio vs Modelo da Aplicação

Contabilidade é entendida como um sistema de recolha, classificação, interpretação e exposição de dados económicos.

Administração e Optimização de BDs

AVALIAR PARA PRESERVAR O PATRIMÓNIO ARQUIVÍSTICO

Capítulo Laudon, Cap. 5

CONSIDERAÇÕES SOBRE ATIVIDADES DE IDENTIFICAÇÃO, LOCALIZAÇÃO E TRATAMENTO DE DADOS NA CONSTRUÇÃO DE UM DATA WAREHOUSE

Ficha prática nº 7. SGBD Microsoft Access e SQL Server

3. Os stocks dos produtos em curso de fabricação, isto é, os stocks entre as diferentes fases do processo produtivo (entre postos de trabalho).

PLANO DE ENSINO PRÉ-REQUISITOS: ENS

PHC Servicos BENEFÍCIOS. _Gestão de reclamações. _Controlo de processos que necessitem de informação centralizada

Copyright 2003, SAS Institute Inc. All rights reserved. 60. Copyright 2003, SAS Institute Inc. All rights reserved. 62


Aprend.e Sistema integrado de formação e aprendizagem

Modelo de dados do Data Warehouse

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

Desenvolvimento Iterativo. Unified Process (UP) Esta abordagem ao desenvolvimento

O que é a ciência de dados (data science). Discussão do conceito. Luís Borges Gouveia Universidade Fernando Pessoa Versão 1.

3 Metodologia 3.1. Tipo de pesquisa

EXERÍCIOS DE MODELAGEM DE BANCO DE DADOS

UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO (Bacharelado)

Modelação Dimensional 4

OLAP em âmbito hospitalar: Transformação de dados de enfermagem para análise multidimensional

Fundamentos de Bancos de Dados Prova 3

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados

Bases de Dados II Engª. Informática + Ensino Informática

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

ANO LECTIVO PLANIFICAÇÃO ANUAL. Tema 1: A Terra: estudos e representações UNIDADE DIDÁCTICA: 1- Da paisagem aos mapas. A descrição da paisagem;

Apresentação da Solução. Divisão Área Saúde. Solução: Gestão de Camas

Transcrição:

Data Warehousing e OLAP Jornadas de Engenharia Informática Instituto Politécnico da Guarda Henrique Madeira Departamento de Engenharia Informática Faculdade de Ciências e Tecnologia Universidade de Coimbra Jornadas de Engenharia Informática Instituto Politécnico da Guarda 27 e 28 de Maio de 2003 1 Para que serve uma data warehouse? Transformar os dados disponíveis numa organização em informação relevante para apoio à decisão Dar a possibilidade aos utilizadores de analisar os dados segundo uma grande variedade de critérios 2 1

Elementos básicos de uma data warehouse BDs operacionais Multidimensional server OLAP application (result analysis) Sistemas legados Ad hoc queries Folhas de cálculo, ficheiros, Fontes externas ROLAP/ MOLAP Net Relatórios estatísticos 3 Data Marts É, normalmente, um subconjunto de uma DW; Numa Data Mart os dados são focalizados numa área específica (processo de negócio); Muitas vezes uma Data Mart é feita para responder rápidamente a uma área de actividade 4 2

Arquitectura de BDs de uma organização 1 BDs operacionais Sistemas legados Data Warehouse Data Mart Folhas de cálculo, ficheiros, Fontes externas Utilizadores Utilizadores 5 Arquitectura de BDs de uma organização 2 BDs operacionais Data Mart Sistemas legados Data Warehouse Folhas de cálculo, ficheiros, Fontes externas Utilizadores Utilizadores 6 3

Sistemas fonte sistema de registo de transacções gestão de clientes, gestão de produtos, gestão de vendas, etc principais características assumidas disponibilidade pesquisas típicas limitadas a fichas individuais mantêm pouca informação histórica A obtenção de relatórios de gestão é complicada e pesada Pouca ligação com restantes sistemas da empresa registos de facturação não ligados a base de produtos ou clientes 7 Elementos básicos de uma data warehouse BDs operacionais Multidimensional server OLAP application (result analysis) Sistemas legados Ad hoc queries Folhas de cálculo, ficheiros, Fontes externas Data Staging Area ROLAP/ MOLAP Net Relatórios estatísticos 8 4

Área de processamento temporário (Staging Area) Área e processos que actuam sobre os dados fonte limpeza transformação combinação preparação Staging Area Data Warehouse 9 Metadados É necessário uma estrutura (na prática outra base de dados) para descrever os dados da DW Deve descrever: Que dados existem na DW; Qual o seu formato; Onde estão armazenados; Como se relacionam com os dados de outras bases de dados; Qual a proveniência dos dados e quem são os seus donos 10 5

Processos básicos da DW Extracção Limpeza Transformação Carregamento e indexação Tratamento de erros Utilização (pesquisas OLAP) 11 Elementos básicos de uma data warehouse BDs operacionais Multidimensional server OLAP application (result analysis) Sistemas legados Ad hoc queries Folhas de cálculo, ficheiros, Fontes externas Data Staging Area ROLAP/ MOLAP Net Relatórios estatísticos 12 6

BD operacionais vs Data Warehouses Dados operacionais Objectivos operacionais Acessos de leitura/escrita Acesso por transacções pré-definidas Acesso a poucos registos de cada vez Dados da Warehouse Registo histórico Acessos só de leitura Acesso por queries ad hoc e relatórios periódicos Muitos registos em cada acesso Dados actualizados em tempo real Estrutura optimizada para actualizações Event-driven: os processos geram dados Carregamentos periódicos de mais dados Estrutura optimizada para queries complexas Data-driven: os dados geram respostas 13 O que é o modelo multidimensional O que é que está aqui dentro?? Net 14 7

Modelo multidimensional Factos armazenados num array multidimensional; As dimensões são usadas para indexar o array; Normalmente construídas sobre bases de dados relacionais Continente Leiria Continente Coimbra Hipermercado Produto Leite Farinha Açúcar Café Vendas Jan Fev Mar Abr Data 15 Exemplo de esquema em estrela Cadeia de Lojas Tempo Dia Dia_da_semana Semana_do_ano Mês Trimestre Ano Produto Tipo Marca Categoria Embalagem Descrição Venda ID_loja Unid_vendidas Custo_compra Valor_venda Nº_Clientes Loja ID_loja Localidade Distrito Área Nº_Caixas 16 8

Modelo em estrela O modelo dimensional típico conduz a uma estrutura em estrela, contendo uma tabela central com os factos à qual estão ligadas as tabelas das dimensões Tabela dimensão 1 ID_dimensão 1 Descrição 1 Atributo Tabela dimensão 2 ID_dimensão 2 Descrição 2 Atributo Tabela Factos ID_dimensão 1 ID_dimensão 2 ID_dimensão 3 ID_dimensão 4 Facto 1 Facto 2 Facto n Tabela dimensão 3 ID_dimensão 3 Descrição 3 Atributo Tabela dimensão 1 ID_dimensão 4 Descrição 4 Atributo 17 Algumas características do modelo em estrela Tabela de Factos Constituída por atributos numéricos (factos) e pelas chaves forasteiras que a ligam à tabelas de dimensões; A tabela de factos está bastante normalizada; Contém normalmente uma enorme quantidade de registo (ocupa vulgarmente mais de 95% do espaço da DW) Tabelas de Dimensões Tabela ID_dimensão dimensão 1 Descrição 1 Atributo Tabela ID_dimensão dimensão 2 Descrição 2 Atributo Tabela Factos ID_dimensão 1 ID_dimensão 2 ID_dimensão 3 ID_dimensão 4 Facto 1 Facto 2 Facto n Há tantas dimensões quantas vertentes sob as quais se pretende analisar os factos; As tabelas de dimensões são fortemente desnormalizadas, sendo normalmente tabelas com muitos atributos; Normalmente, apesar de terem muitos atributos, contêm poucos registos (quando comparados com a tabela de factos) Tabela ID_dimensão dimensão 3 Descrição 3 Atributo Tabela ID_dimensão dimensão 14 Descrição 4 Atributo 18 9

Passos para definir modelos em estrela 1 - Identificar os processos de negócio/actividade 2 - Identificar os factos; 3 - Identificar dimensões; 4 - Escolher a ganularidade dos dados a registar Sem perder de vistas os dados efectivamente disponíveis (BDs operacionais, ficheiros, etc) 19 Exemplo - Cadeia de lojas Produto Número Marca Categoria Subcategoria Departamento Tipo_embalagem Tipo_dieta Peso Unidade_de_peso Quant_caixa Caixas_p_pallete Larg_prateleira Altura_prateleira Profun_pratelei Tempo Dia_do_mês Dia_da_semana Dia_do_ano Semana_do_ano Mês Número_do_mês Trimestre Período_fiscal Flag_feriado Flag_dia_semana Flag_últ_dia_mês Estação_ano Aconteci_espec ID_Loja ID_Promoção Unid_vendidas Custo_compra Valor_venda Nº_clientes Promoção ID_promoção Número _promo Tipo_red_preço Tipo_anúncio Tipo_cartaz Tipo_coupons Meio_anúncio Meio_cartaz Custo_promoção Início_promoção Fim_promoção Loja ID_loja Número_loja Endereço Localidade Código_postal Distrito Região Telefone Gestor_loja Área_total Área_mercearias Área_congelados Área_bazar Nº_Caixas Data_inauguração Data_ult_remod 20 10

Dimensão tempo Tempo Dia_do_mês Dia_da_semana Dia_do_ano Semana_do_ano Mês Número_do_mês Trimestre Período_fiscal Flag_feriado Flag_dia_semana Flag_último_dia_mês Estação_ano Acontecimento_espec Existe sempre, pois representa a dependência temporal inerente à DW; Deve descrever o tempo tal como ele é visto para fins de gestão da actividade (negócio) em causa; Deve conter a caraterização do tempo nos atributos pelos quais se pretende posteriormente fazer pesquisas; É gerada, normalmente, de uma forma sintética (ie, sem ser a partir de uma BD operacional) para todo o período de tempo considerado na DW 21 Dimensão produto Produto Número Marca Categoria Subcategoria Departamento Tam_embalagem Tipo_embalagem Tipo_dieta Peso Unidade_de_peso Quantidade_caixa Caixas_por_pallete Largura_prateleira Altura_prateleira Profud_prateleira Deve conter a caraterização dos produtos tal como eles são vistos pelo gestor da cadeia de lojas; Contém todos os atributos pelos quais se pretende posteriormente fazer perguntas; Como acontece normalmente nas tabelas de dimensões, é uma tabela bastante desnormalizada 22 11

Dimensão loja Loja ID_loja Número_loja Endereço Localidade Código_postal Distrito Região Telefone Fax Gestor_loja Área_total Área_mercearias Área_congelados Área_bazar Nº_Caixas Data_inauguração Data_ultim_remod Contém a caraterização das lojas tal como eles são vistos pelo gestão da cadeia de lojas; Contém todos os atributos pelos quais se pretende posteriormente fazer perguntas, incluindo atributos de natureza geográfica (localização) e de natureza temporal (datas de inauguração, ) 23 Dimensão promoções Promoção ID_promoção Número _promo Tipo_red_preço Tipo_anúncio Tipo_cartaz Tipo_coupons Meio_anúncio Meio_cartaz Custo_promoção Início_promoção Fim_promoção Contém a caraterização das promoções efectuadas; Neste exemplo há apenas uma dimensão de promoções (para todos os tipos de promoções), mas seria possível ter em alternativa uma dimensão para cada tipo de promoção; A dimensão promoção representa, neste exemplo, uma dimensão muito sensível e importante, pois as promoções são um dos aspectos em que o gestor mais facilmente pode actuar quando pretende incrementar as vendas numa loja ou num determinado produto 24 12

Análise dos dados (ferramentas OLAP) Produto Número Marca Categoria Subcategoria Departamento Tipo_embalagem Tipo_dieta Peso Unidade_de_peso Quant_caixa Caixas_p_pallete Larg_prateleira Altura_prateleira Profun_pratelei Tempo Dia_do_mês Dia_da_semana Dia_do_ano Semana_do_ano Mês Número_do_mês Trimestre Período_fiscal Flag_feriado Flag_dia_semana Flag_últ_dia_mês Estação_ano Aconteci_espec ID_Loja ID_Promoção Unid_vendidas Custo_compra Valor_venda Nº_clientes Promoção ID_promoção Número _promo Tipo_red_preço Tipo_anúncio Tipo_cartaz Tipo_coupons Meio_anúncio Meio_cartaz Custo_promoção Início_promoção Fim_promoção Loja ID_loja Número_loja Endereço Localidade Código_postal Distrito Região Telefone Gestor_loja Área_total Área_mercearias Área_congelados Área_bazar Nº_Caixas Data_inauguração Data_ult_remod Select avg(valor_venda x Unid_vendidas) from Venda V, Tempo T, Produto P where JOIN_TABELAS group by PMarca, T Mês 25 Mais do que uma estrela Loja Vendas ID_Loja Unid_vendidas Custo_compra Valor_venda Nº_Clientes Tempo Produto Existências ID_tempo ID_armazém Quant_existente Quant_saída Valor_de_custo Últim_preço_venda Armazém Uma ou mais estrelas interligam-se por uma ou mais dimensões; As dimensões que promovem a interligação têm de ser conformes (conter informação consistente entre si); Drill across: consulta à DW que cruza mais do que uma estrela 26 13

Exemplo de dimensões conformes Dimensão_1 Dimensão_5 Dimensão_4 Tabela de Factos Dimensão_2 Tabela de Factos Dimensão_6 Dimensão_1 Dimensão_3 Dimensão_7 Dimensão10 Tabela de Factos Dimensão_9 Dimensão_8 Têm de ser conformes 27 Será que é tudo tão simples? As dimensões nem sempre são pequenas As dimensões nem sempre são estáticas É difícil definir o modelo multidimensional para alguns negócios Há relacionamentos M para N entre dimensões e factos Etc, etc, etc E ainda os grandes problemas Espaço ocupado Velocidade de execução das queries 28 14

Exemplo - Cadeia de lojas Produto Número Marca Categoria Subcategoria Departamento Tipo_embalagem Tipo_dieta Peso Unidade_de_peso Quant_caixa Caixas_p_pallete Larg_prateleira Altura_prateleira Profun_pratelei Tempo Dia_do_mês Dia_da_semana Dia_do_ano Semana_do_ano Mês Número_do_mês Trimestre Período_fiscal Flag_feriado Flag_dia_semana Flag_últ_dia_mês Estação_ano Aconteci_espec ID_Loja ID_Promoção Unid_vendidas Custo_compra Valor_venda Nº_clientes Promoção ID_promoção Número _promo Tipo_red_preço Tipo_anúncio Tipo_cartaz Tipo_coupons Meio_anúncio Meio_cartaz Custo_promoção Início_promoção Fim_promoção Loja ID_loja Número_loja Endereço Localidade Código_postal Distrito Região Telefone Gestor_loja Área_total Área_mercearias Área_congelados Área_bazar Nº_Caixas Data_inauguração Data_ult_remod 29 Cálculo simplificado do espaço ocupado Granularidade = Produtos vendidos / em cada loja / em cada dia Tempo = 3 anos Nº Produtos = 100000 (apenas 20% dos produtos são vendidos diariamente) Lojas = 100 Tamanho médio de registo = 8 atributos x 4 Bytes = 32 Bytes Nº de registos de factos = 3 x 365 x 20000 x 100 = 2190000000 Tamanho aproximado da DW = 32 x 2190000000 = 70 GBytes Despreza-se o espaço ocupado pelas tabelas de dimensões; Não considera o armazenamento dos índices nem vistas materializadas; 30 15

Como acelerar as respostas a queries? Bom projecto lógico dos esquemas em estrela Bom projecto físico (as coisas básicas) Infraestrutura HW + SO + SGDB correctamente administrada e afinada Cuidados particulares com os sistemas de discos (vários discos, particionamento, RAID) Parâmetros físicos correctos para as tabelas (e todos os outros objectos) Correcta indexação (B*Tree e Bit-map) com parametros físicos correctamente definidos Manutenção das estatísticas do SGBD para permitir optimização das queries Usar agregados (vistas materializadas) Afinar, afinar, afinar Usar processamento paralelo/distribuído Redução de dados 31 Redução de dados e sumarização Net Net 32 16

Processamento distribuído e paralelo Net Net 33 17