Introdução à Modelagem Dimensional para Datawarehouses Fernanda Baião fernanda.baiao@uniriotec.br PPGI UNIRIO Abril 2007 1 Tópicos Inteligência do Negócio Contexto das Organizações A tecnologia de Data Warehouse Motivação e Conceitos Objetivos e Arquitetura Processo de Desenvolvimento do Data Warehouse Projeto do Warehouse Modelagem Multidimensional 2 1
Ambiente de aplicações Adaptado de: Carlos Barbieri BI: Business Intelligence - Modelagem e Tecnologia 3 Inteligência do Negócio (BI) Utilização de várias fontes de informação para se definir estratégias de competitividade nos negócios da empresa Problema da inundação de informações Montanhas de dados Busca e recuperação de informação são difíceis Apresentação da informação Tomadas de decisão são prejudicadas 4 2
Inteligência do Negócio Desafio: Definir regras e técnicas para a apresentação adequada deste volume de dados visando transformá-los em depósitos estruturados de informação, independente da sua origem 5 Contexto das Organizações 2 mundos de informação diferentes Operacional (execução) x Gerencial (Planejamento e Controle) Objetivos distintos Requisitos de ambientes de BD distintos Informação 6 3
Ambientes de BD Operacionais Dão suporte às funções associadas à execução do negócio da empresa: sistemas administrativos, de controle de estoque, assinaturas de clientes, etc. Tipo de processamento: OLTP On-line transactional processing transações pontuais (1 registro por vez) velocidade e automação de funções repetitivas atualizações e consultas em grande número trabalha com alto nível de detalhe situação corrente 7 Ambientes de BD Gerenciais Dão suporte às atividades de tomada de decisões gerenciais na organização Sistemas de suporte à decisão, ferramentas de análise Tipo de processamento: OLAP On-line analytical processing Pequeno número de consultas variáveis centenas, milhares,... de registros por consulta Diversas fontes de dados Diferentes perspectivas Operações de agregação e cruzamentos Atualização quase inexistente, apenas novas inserções Dados históricos são relevantes 8 4
O que é um Data Warehouse Data Warehouse Uma coleção de dados... Orientados ao assunto Integrados Não voláteis Variantes no tempo... Para fornecer suporte ao processo de tomada de decisões na organização [Inmon, 92] 9 O que é um Data Mart Data Mart Um subconjunto lógico do Data Warehouse, geralmente visto como um data warehouse setorial. [Kimball] 10 5
Objetivos de um Data Warehouse Integrar dados de múltiplas fontes Facilitar o processo de análise sem impacto para o ambiente de dados operacionais Obter informação de qualidade Atender diferentes tipos de usuários finais Ser flexível e ágil para atender novas análises Sistema de Apoio à Decisão Fontes de Dados Operacionais DW Ferramenta OLAP Sistema de Mineração de Dados11 Arquitetura de um Ambiente de Data Warehouse [Han e Kamber, 2001] Componentes Dados Operacionais 3 camadas Camada Interna: Servidor DW Camada Intermediária: Servidor OLAP Camada Externa: Ferramentas de acesso aos dados 12 6
Arquitetura de um Ambiente de Data Warehouse Ferramentas Relatórios Análise Mineração de Dados Servidor OLAP Metadados DW Extração Limpeza Transformações Carga Atualização Data Marts Servidor DW Dados BDs operacionais Fontes externas 13 Processo de Desenvolvimento de DWs Etapas: Planejamento Levantamento de Requisitos e Análise do Problema Projeto do Data Warehouse Integração de Dados e Testes Implantação 14 7
Projeto do Data Warehouse Requisitos flexibilidade e agilidade para suportar análises não previstas Permitir análise das medidas disponibilizadas sob diferentes perspectivas Abordagem utilizada: MODELAGEM DIMENSIONAL 15 Visão multidimensional Forma pela qual analistas de negócio, gerentes e executivos analisam informações Como foi a distribuição das vendas do Produto X em todas as cidades no ano passado? Qual o total de vendas do Produto X na Região Sudeste no mês de janeiro? Em quanto aumentaram as vendas do Produto X durante a promoção em abril de 2003? 16 8
Visão multidimensional Foco no cruzamento das informações Facilita o entendimento e visualização de problemas típicos de suporte à decisão Mais intuitiva para o processamento analítico Utilizada pelas ferramentas OLAP Qual a diferença da visão multidimensional para a visão tabular do modelo relacional? 17 Visão Relacional Volume de vendas para a concessionária XCar MODEL CITY SALES VOLUME MINI VAN NEW YORK 6 MINI VAN LOS ANGELES 5 MINI VAN MADISON 4 SPORTS COUPE NEW YORK 3 SPORTS COUPE LOS ANGELES 5 SPORTS COUPE MADISON 5 SEDAN NEW YORK 4 SEDAN LOS ANGELES 3 SEDAN MADISON 2 18 9
Visão multidimensional Volume de vendas para a concessionária Xcar M O D E L Mini Van Coupe Sedan 6 5 4 3 5 5 4 3 2 NY LA CITY Madison Um vetor multidimensional tem um número fixo de dimensões e os valores são armazenados nas células Cada dimensão consiste de um número de elementos 19 Acrescentando mais uma coluna... MODEL CITY DEALERSHIP VOLUME MINI VAN NEW YORK CLYDE 6 MINI VAN NEW YORK GLEASON 6 MINI VAN NEW YORK CARR 2 MINI VAN LOS ANGELES CLYDE 3 Volume de vendas por fornecedor MINI VAN LOS ANGELES GLEASON 5 MINI VAN LOS ANGELES CARR 5 MINI VAN MADISON CLYDE 2 MINI VAN MADISON GLEASON 4 MINI VAN MADISON CARR 3 SPORTS COUPE NEW YORK CLYDE 2 SPORTS COUPE NEW YORK GLEASON 3 SPORTS COUPE NEW YORK CARR 2 SPORTS COUPE LOS ANGELES CLYDE 7 SPORTS COUPE LOS ANGELES GLEASON 5 SPORTS COUPE LOS ANGELES CARR 2 SPORTS COUPE MADISON CLYDE 4 SPORTS COUPE MADISON GLEASON 5 SPORTS COUPE MADISON CARR 1 SEDAN NEW YORK CLYDE 6 SEDAN NEW YORK GLEASON 4 SEDAN NEW YORK CARR 2 SEDAN LOS ANGELES CLYDE 1 SEDAN LOS ANGELES GLEASON 3 SEDAN LOS ANGELES CARR 4 SEDAN MADISON CLYDE 2 SEDAN MADISON GLEASON 2 SEDAN MADISON CARR 320 10
Visão multidimensional Volume de vendas para a concessionária Xcar M O D E L Mini Van Coupe Sedan 6 1 2 NY LA Madison CITY Carr Gleason Clyde DEALERSHIP Dados podem ser imaginados como em um cubo metáfora visual representação intuitiva: dimensões coexistem para todo ponto no cubo e são independentes umas das outras 21 Adicionando Dimensões - Hipercubos Volume de vendas para a concessionária Xcar, ao longo do tempo M O D E L Mini Van Mini Van Mini Van Coupe Coupe Coupe Carr Carr Carr Sedan Sedan Sedan 6 1 2 Gleason 5 10 1 Gleason 6 25 0 Gleason Clyde Clyde Clyde NY LA Madison NY LA Madison NY LA Madison CITY CITY CITY DEALERSHIP JANUARY FEBRUARY MARCH 22 11
Modelagem Multidimensional Utilização dos conceitos do modelo multidimensional a fim de representar, de forma clara, eficiente e flexível, a visão multidimensional dos dados Conceitos Fatos Dimensões Hierarquias e Agregações 23 Fatos Sales Fact date_key product_key store_key dollar_sold unit_sold dollar_cost Medidas numéricas do negócio Volume de vendas (número de itens, total em reais), quantidade de itens em estoque, volume de transações de cartão de crédito Representados em uma Tabela de Fatos Valores das medidas (numéricas e aditivas) e Referências para as dimensões (granularidade) Não armazena informação redundante! (textos, valores zerados) Quantidade de registros é normalmente muito grande em um DW 25 12
Tabela de Fatos Sales Fact date_key product_key store_key dollar_sold unit_sold dollar_cost Em um SGBD relacional Relação (Tabela) Chaves estrangeiras para as tabelas de dimensão Chave primária é subconjunto das chaves estrangeiras Em um SGBD multidimensional Cubo (vetor n-dimensional) 26 Dimensões Product Dimension product_key description brand category department package type package size fat content diet type weight weight unit of measure storage type... Pontos de vista ou perspectivas do negócio sobre os quais uma organização deseja guardar registros Loja, Produto, Fornecedor, Tempo Representadas em Tabelas de Dimensão Descrição completa da dimensão Atributos textuais e de domínio discreto preferencialmente Essenciais para tornar o DW usável e legível Tipo de armazenamento = V ou Tipo de armazenamento = Vácuo? 27 13
Tabela de Dimensão Product Dimension product_key description brand category department package type package size fat content diet type weight weight unit of measure storage type... Chave simples Fonte principal das cláusulas das consultas, agrupamentos e títulos de relatórios Volume de vendas por produto Usualmente não dependente do tempo Desnormalizada Hierarquias implícitas 28 Date Dimension date_key date month year... Ano Mês Níveis nas dimensões ou Hierarquias Hierarquias são a base das agregações Volume de vendas Dia Tempo: 2003 abril maio 7 14 21 29 15 30 Área geográfica NE Brasil SUL NO PE SE RS SC AC AM 34 23 45 62 56 150 23 92 73 23 234 13 87 21 14.. País Região Estado Area Dimension area_key state region country... 29 14
Hierarquias e Agregados Produto Tempo Geografia Consultas Marca Ano País Categoria Trimestre Região Vendas por Produto, Ano e Região Produto Mês Estado 30 Esquemas para o modelo Multidimensional Fatos e dimensões podem ser dispostos segundo diferentes configurações Esquema Estrela Esquema Flocos de Neve Esquema Constelação de Fatos 31 15
Esquema Estrela 1 tabela de fatos Sem redundância n tabelas de dimensões 1 para cada dimensão onde O quê quem quando 32 Esquema Estrela Time Dimension time_key day month year holiday_flag Sales Fact time_key product_key store_key dollar_sold unit_sold dollar_cost Product Dimension product_key description brand category Store Dimension store_key store_name address city state 33 16
Modelagem Multidimensional: Esquema Estrela Dominante no projeto de DW [Kimball e Ross, 2002] Características: Distingue bem as dimensões dos fatos medidos Simplifica a visualização dimensional Simetria Eficiente para a realização de consultas Acomodam mudanças mais facilmente Hierarquias são representadas pelos atributos da dimensão 34 Exercício Suponha o exemplo da concessionária Xcar já apresentado, onde um gerente geral de marketing deseja analisar o volume de vendas dos modelos de carro de cada fornecedor em cada cidade de cada estado dos EUA, onde a concessionária possua filiais. Especifique um esquema estrela para esta concessionária. Dê alguns exemplos de consultas e análises que poderiam ser úteis para o gerente. 35 17
Exercício Concessionária XCar M O D E L Mini Van Coupe Sedan NY LA Madison Carr Gleason Clyde Mini Van Coupe Sedan NY LA Madison Carr Gleason Clyde Mini Van Coupe Sedan NY LA Madison Carr Gleason Clyde DEALERSHIP CITY CITY CITY JANUARY FEBRUARY MARCH 36 Esquema Floco de Neve Variante do esquema estrela 1 tabela de fatos sem redundância K tabelas de dimensões 1 dimensão pode ter várias tabelas Tabelas de dimensão são normalizadas Evita redundância Requer mais junções para as consultas Hierarquias representadas pelos relacionamentos entre as dimensões 39 18
Esquema Floco de Neve 40 Esquema Floco de Neve Time Dimension time_key day_of_week month quarter year holiday_flag Sales Fact time_key product_key store_key dollar_sold unit_sold dollar_cost Product Dimension product_key description category_key Store Dimension store_key store_name address city_key Category Dimension category_key description brand_key Brand Dimension brand_key description City Dimension city_key city_name state 41 19
Esquema Constelação de Fatos Múltiplas tabela de fatos com dimensões compartilhadas Maior complexidade 42 Esquema Constelação de Fatos Time Dimension Shipping Fact time_key day_of_week month quarter year holiday_flag Sales Fact time_key product_key location_key dollar_sold unit_sold dollar_cost Product Dimension product_key description brand category Location Dimension loc_key loc_name address city state time_key product_key from_location_key to_location_key shipper_key dollar_cost units_shipped Shipper Dimension shipper_key shipper_name location_key 43 20
A Modelagem Multidimensional no Projeto de DWs Etapas: Escolha do processo de negócio Departamental ou corporativo Pedidos, seguros, inventário, vendas, entregas Os de maior impacto para o usuário primeiro Escolha da granularidade do Processo de Negócio Nível mais detalhado das medidas da tabela de fatos Transações individuais ou posições periódicas Cada item de uma nota fiscal de venda, um cartão de embarque em um vôo, posição diária de um produto em estoque, posição mensal de uma conta bancária 44 A Modelagem Multidimensional no Projeto de DWs Etapas: Escolha das dimensões para cada tabela de fatos Como descrever os dados do negócio? Data (tempo), produto, cliente, tipo de transação Escolha das medidas para a tabela de fatos Que medidas devem ser acompanhadas? Granularidade definida pelas dimensões relacionadas Quantidade solicitada, Custo em reais Percentuais não devem ser armazenados, e sim seus numeradores e denominadores 45 21
Questões críticas para modelagem dimensional Foco nos requisitos e objetivos do negócio Nãonatecnologiae nosdados Envolvimento do patrocinador e usuários gerenciais é essencial para o sucesso Adote uma abordagem incremental e iterativa para o desenvolvimento do DW Não tente fazer tudo de uma vez Desempenho das consultas do usuário e facilidade de uso são osfatoresmaiscríticos Otimização de consultas OLAP Apresente os dados de forma simples, e com a semântica clara Nível de detalhe deve chegar até os dados atômicos Esteja preparado para mudanças no negócio e nos dados Dê especial atenção à aceitação dos usuários 46 Conclusão Modelagem dimensional é a abordagem utilizada para o projeto de DWs Visão dimensional dos dados intuitiva, flexível e eficiente para consultas Fatos, dimensões e hierarquias Esquemas Estrela, flocos de neve e constelação de fatos Fases do projeto Escolha do: Processo de negócio, granularidade, dimensões e medidas de fatos (nesta ordem) 47 22
Exemplo de tabela Tempo date key day num in month day num overall day abbre v week num in year week num overall week begin date week begin date key month num overall full date day of week day name weekday flag month month name 1 1/1/96 1 1 1 Monday Mon y 1 1 1/1/96 1 1 1 January Jan 2 1/2/96 2 2 2 Tuesday Tue y 1 1 1/1/96 1 1 1 January Jan 3 1/3/96 3 3 3 WednesdaWed y 1 1 1/1/96 1 1 1 January Jan 4 1/4/96 4 4 4 Thursday Thu y 1 1 1/1/96 1 1 1 January Jan 5 1/5/96 5 5 5 Friday Fri y 1 1 1/1/96 1 1 1 January Jan 6 1/6/96 6 6 6 Saturday Sat n 1 1 1/1/96 1 1 1 January Jan 7 1/7/96 7 7 7 Sunday Sun n 1 1 1/1/96 1 1 1 January Jan 8 1/8/96 1 8 8 Monday Mon y 2 2 1/8/96 8 1 1 January Jan 9 1/9/96 2 9 9 Tuesday Tue y 2 2 1/8/96 8 1 1 January Jan month abbrev 48 Exercício Suponha uma Companhia Aérea GOAL que deseja construir um DW para o seu negócio. Seu objetivo principal é aumentar seu lucro através do aumento da taxa de ocupação de seus vôos, para isso lançando promoções e descontos aos clientes. Também é desejável otimizar a escala da tripulação, e o período de manutenção das aeronaves. Projete um esquema para o DW da companhia GOAL, descrevendo o resultado de cada uma das etapas da modelagem dimensional apresentadas. 49 23