08 - DW - Modelagem Dimensional para Datawarehouses

23
1 1 Introdução à Modelagem Dimensional para Datawarehouses Fernanda Baião [email protected] PPGI – UNIRIO Abril 2007 2 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

Transcript of 08 - DW - Modelagem Dimensional para Datawarehouses

Page 1: 08 - DW - Modelagem Dimensional para Datawarehouses

1

1

Introdução à Modelagem Dimensional para Datawarehouses

Fernanda Baiã[email protected]

PPGI – UNIRIO

Abril 2007

2

TópicosInteligência do NegócioContexto das OrganizaçõesA tecnologia de Data Warehouse

Motivação e ConceitosObjetivos e ArquiteturaProcesso de Desenvolvimento do Data Warehouse

Projeto do WarehouseModelagem Multidimensional

Page 2: 08 - DW - Modelagem Dimensional para Datawarehouses

2

3

Ambiente de aplicações

Adaptado de: Carlos BarbieriBI: Business Intelligence - Modelagem e Tecnologia

4

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íceisApresentação da informação Tomadas de decisão são prejudicadas

Page 3: 08 - DW - Modelagem Dimensional para Datawarehouses

3

5

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

6

Contexto das Organizações

“2 mundos de informação diferentes”Operacional (execução) x Gerencial (Planejamento e Controle)Objetivos distintosRequisitos de ambientes de BD distintos

InformaçãoInformação

Page 4: 08 - DW - Modelagem Dimensional para Datawarehouses

4

7

Ambientes de BD OperacionaisDão suporte às funções associadas à execuçãoexecução do negócio da empresa:

sistemas administrativos, de controle de estoque, assinaturas de clientes, etc.

Tipo de processamento: OLTPOLTPOn-line transactional processingtransações pontuais (1 registro por vez)velocidade e automação de funções “repetitivas”atualizações e consultas em grande númerotrabalha com alto nível de detalhesituação corrente

8

Ambientes de BD GerenciaisDão suporte às atividades de tomada de decisões tomada de decisões gerenciaisgerenciais na organização

Sistemas de suporte à decisão, ferramentas de análiseTipo de processamento: OLAPOLAP

On-line analytical processing“Pequeno” número de consultas “variáveis”centenas, milhares, ... de registros por consultaDiversas fontes de dadosDiferentes perspectivasOperações de agregação e cruzamentosAtualização quase inexistente, apenas novas inserçõesDados históricos são relevantes

Page 5: 08 - DW - Modelagem Dimensional para Datawarehouses

5

9

O que é um Data Warehouse

Data Warehouse“Uma coleção de dados...

Orientados ao assuntoIntegradosNão voláteisVariantes no tempo

... Para fornecer suporte ao processo de tomada de decisões na organização” [Inmon, 92]

10

O que é um Data Mart

Data Mart“Um subconjunto lógico do Data Warehouse, geralmente visto como um data warehouse setorial.” [Kimball]

Page 6: 08 - DW - Modelagem Dimensional para Datawarehouses

6

11

Objetivos de um Data Warehouse

Integrar dados de múltiplas fontesFacilitar o processo de análise sem impacto para o ambiente de dados operacionaisObter informação de qualidadeAtender diferentes tipos de usuários finaisSer flexível e ágil para atender novas análises

Fontes de DadosOperacionais DW

Sistema de Apoio à Decisão

FerramentaOLAP

Sistema de Mineração de Dados

12

Arquitetura de um Ambientede Data Warehouse

[Han e Kamber, 2001] Componentes

Dados Operacionais3 camadas

Camada Interna: Servidor DWCamada Intermediária: Servidor OLAPCamada Externa: Ferramentas de acesso aosdados

Page 7: 08 - DW - Modelagem Dimensional para Datawarehouses

7

13

Arquitetura de um Ambientede Data Warehouse

BDs operacionais Fontes externas

ExtraçãoLimpeza

TransformaçõesCarga

Atualização

MetadadosData Marts

Dados

Servidor DW

Servidor OLAP

Ferramentas

DW

Relatórios Análise Mineração de Dados

14

Processo de Desenvolvimento de DWs

Etapas:PlanejamentoLevantamento de Requisitos e Análise do ProblemaProjeto do Data WarehouseIntegração de Dados e TestesImplantação

Page 8: 08 - DW - Modelagem Dimensional para Datawarehouses

8

15

Projeto do Data Warehouse

Requisitosflexibilidade e agilidade para suportaranálises não previstasPermitir análise das medidasdisponibilizadas sob diferentes perspectivas

Abordagem utilizada:MODELAGEM DIMENSIONALMODELAGEM DIMENSIONAL

16

Visão multidimensional

Forma pela qual analistas de negócio, gerentes e executivos analisam informações

Em quanto aumentaram as

vendas do Produto X durante a promoção em abril de 2003 ?

Como foi a distribuiçãodas vendas do ProdutoX em todas as cidades

no ano passado?

Qual o total de vendas do

Produto X na Região Sudeste no mês de

janeiro ?

Page 9: 08 - DW - Modelagem Dimensional para Datawarehouses

9

17

Visão multidimensional

Foco no cruzamento das informaçõesFacilita o entendimento e visualização de problemas típicos de suporte à decisãoMais intuitiva para o processamento analíticoUtilizada pelas ferramentas OLAP

Qual a diferença da visão multidimensional para a visão “tabular” do modelo relacional?

18

Visão Relacional

Volume de vendas para a concessionária XCarMODEL CITY SALES VOLUME

MINI VAN NEW YORK 6MINI VAN LOS ANGELES 5MINI VAN MADISON 4

SPORTS COUPE NEW YORK 3SPORTS COUPE LOS ANGELES 5SPORTS COUPE MADISON 5

SEDAN NEW YORK 4SEDAN LOS ANGELES 3SEDAN MADISON 2

Page 10: 08 - DW - Modelagem Dimensional para Datawarehouses

10

19

Visão multidimensionalVolume de vendas para a concessionária Xcar

Um vetor multidimensional tem um número fixo de dimensões e os valores são armazenados nas célulasCada dimensão consiste de um número de elementos

CITY

MODEL

Mini Van

Sedan

Coupe

LA MadisonNY

6 5 4

3 5 5

4 3 2

20

Acrescentando mais umacoluna... 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 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 3

Volume de vendas porfornecedor

Page 11: 08 - DW - Modelagem Dimensional para Datawarehouses

11

21

Visão multidimensionalVolume de vendas para a concessionária Xcar

Dados podem ser imaginados como em um “cubo”metáfora visualrepresentação intuitiva: dimensões coexistem para todoponto no cubo e são independentes umas das outras

DEALERSHIP

Mini Van

Coupe

Sedan

NY LA Madison

MODEL

ClydeGleason

Carr

CITY

6 1 2

22

Adicionando Dimensões -Hipercubos

Volume de vendas para a concessionáriaXcar, ao longo do tempo

JANUARY FEBRUARY MARCH

MODEL

Mini Van

Coupe

Sedan

NY LA Madison

ClydeGleason

Carr

CITY

Mini Van

Coupe

Sedan

NY LA Madison

ClydeGleason

Carr

CITY

Mini Van

Coupe

Sedan

NY LA Madison

ClydeGleason

Carr

CITY

DEALERSHIP6 1 2 5 10 1 6 25 0

Page 12: 08 - DW - Modelagem Dimensional para Datawarehouses

12

23

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

ConceitosFatosDimensões

Hierarquias e Agregações

25

FatosMedidas 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 FatosValores 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

Sales Factdate_keyproduct_keystore_keydollar_soldunit_solddollar_cost

Page 13: 08 - DW - Modelagem Dimensional para Datawarehouses

13

26

Tabela de Fatos

Em um SGBD relacionalRelação (Tabela)Chaves estrangeiras para as tabelas de dimensãoChave primária é subconjunto das chaves estrangeiras

Em um SGBD multidimensionalCubo (vetor n-dimensional)

Sales Factdate_keyproduct_keystore_keydollar_soldunit_solddollar_cost

27

DimensõesPontos 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ãoDescriçã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” ?

Product Dimensionproduct_keydescriptionbrandcategorydepartmentpackage typepackage sizefat contentdiet typeweightweight unit of measurestorage type...

Page 14: 08 - DW - Modelagem Dimensional para Datawarehouses

14

28

Tabela de DimensãoChave simplesFonte principal das cláusulas das consultas, agrupamentos e títulos de relatórios

Volume de vendas “por produto” Usualmente não dependente do tempoDesnormalizadaHierarquias implícitas

Product Dimensionproduct_keydescriptionbrandcategorydepartmentpackage typepackage sizefat contentdiet typeweightweight unit of measurestorage type...

29

Níveis nas dimensões ouHierarquias

Hierarquias são a base das agregaçõesVolume de vendas

2003

abril

maio

7

14212915

30

Brasil

SULNE NO

SE RSPE SC AC AM

Tempo:

Área geográfica

34 23 45 62 56 150

23 92 73 23 234

13 87 21 14

…..

DiaMêsAno

Estado

Região

País

Area Dimensionarea_keystateregioncountry...

Date Dimensiondate_keydatemonthyear...

Page 15: 08 - DW - Modelagem Dimensional para Datawarehouses

15

30

Hierarquias e Agregados

Geografia

Estado

TempoProdutoConsultas

Produto

Marca

Categoria

Mês

Trimestre

Ano

Região

PaísVendas por

Produto,Ano e Região

31

Esquemas para o modelo Multidimensional

Fatos e dimensões podem ser dispostos segundo diferentes configurações

Esquema EstrelaEsquema Flocos de NeveEsquema Constelação de Fatos

Page 16: 08 - DW - Modelagem Dimensional para Datawarehouses

16

32

Esquema Estrela1 tabela de fatos

Sem redundância

n tabelas de dimensões1 para cada dimensão

onde

quem quando

O quê

33

Esquema Estrela

Sales Facttime_keyproduct_keystore_keydollar_soldunit_solddollar_cost

Time Dimension

time_keydaymonthyearholiday_flag

Product Dimensionproduct_keydescriptionbrandcategory

Store Dimensionstore_keystore_nameaddresscitystate

Page 17: 08 - DW - Modelagem Dimensional para Datawarehouses

17

34

Modelagem Multidimensional: Esquema Estrela

Dominante no projeto de DW [Kimball e Ross, 2002]Características:

Distingue bem as dimensões dos fatos medidosSimplifica a visualização dimensionalSimetriaEficiente para a realização de consultasAcomodam mudanças mais facilmente

Hierarquias são representadas pelos atributos da dimensão

35

ExercícioSuponha 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.

Page 18: 08 - DW - Modelagem Dimensional para Datawarehouses

18

36

Exercício

Concessionária XCar

JANUARY FEBRUARY MARCH

MODEL

Mini Van

Coupe

Sedan

NY LA Madison

ClydeGleason

Carr

CITY

Mini Van

Coupe

Sedan

NY LA Madison

ClydeGleason

Carr

CITY

Mini Van

Coupe

Sedan

NY LA Madison

ClydeGleason

Carr

CITY

DEALERSHIP

39

Esquema Floco de NeveVariante do esquema estrela

1 tabela de fatossem redundância

K tabelas de dimensões1 dimensão pode ter várias tabelas

Tabelas de dimensão são normalizadasEvita redundânciaRequer mais junções para as consultas

Hierarquias representadas pelos relacionamentos entre as dimensões

Page 19: 08 - DW - Modelagem Dimensional para Datawarehouses

19

40

Esquema Floco de Neve

41

Esquema Floco de Neve

Sales Fact

time_keyproduct_keystore_keydollar_soldunit_solddollar_cost

Time Dimension

time_keyday_of_weekmonthquarteryearholiday_flag

Product Dimensionproduct_keydescriptioncategory_key

Store Dimensionstore_keystore_nameaddresscity_key

Category Dimensioncategory_keydescriptionbrand_key

Brand Dimensionbrand_keydescription

City Dimensioncity_keycity_namestate

Page 20: 08 - DW - Modelagem Dimensional para Datawarehouses

20

42

Esquema Constelação de Fatos

Múltiplas tabela de fatos com dimensões compartilhadas

Maior complexidade

43

Esquema Constelação de Fatos

Sales Facttime_keyproduct_keylocation_keydollar_soldunit_solddollar_cost

Time Dimension

time_keyday_of_weekmonthquarteryearholiday_flag

Product Dimensionproduct_keydescriptionbrandcategory

Location Dimensionloc_keyloc_nameaddresscitystate

Shipping Facttime_keyproduct_keyfrom_location_keyto_location_keyshipper_keydollar_costunits_shipped

Shipper Dimensionshipper_keyshipper_namelocation_key

Page 21: 08 - DW - Modelagem Dimensional para Datawarehouses

21

44

A Modelagem Multidimensional no Projeto de DWs

Etapas:Escolha do processo de negócio

Departamental ou corporativoPedidos, seguros, inventário, vendas, entregasOs de maior impacto para o usuário primeiro

Escolha da granularidade do Processo de NegócioNível mais detalhado das medidas da tabela de fatosTransações individuais ou posições periódicasCada 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

45

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 fatosQue medidas devem ser acompanhadas?Granularidade definida pelas dimensões relacionadasQuantidade solicitada, Custo em reaisPercentuais não devem ser armazenados, e sim seus numeradores e denominadores

Page 22: 08 - DW - Modelagem Dimensional para Datawarehouses

22

46

Questões críticas paramodelagem dimensional

Foco nos requisitos e objetivos do negócioNão na tecnologia e nos dados

Envolvimento do patrocinador e usuários gerenciais é essencialpara o sucessoAdote uma abordagem incremental e iterativa para o desenvolvimento do DW

Não tente fazer tudo de uma vezDesempenho das consultas do usuário e facilidade de uso sãoos fatores mais críticos

Otimização de consultas OLAPApresente os dados de forma simples, e com a semântica claraNível de detalhe deve chegar até os dados atômicosEsteja preparado para mudanças no negócio e nos dadosDê especial atenção à aceitação dos usuários

47

Conclusão

Modelagem dimensional é a abordagem utilizada para o projeto de DWs

Visão dimensional dos dadosintuitiva, flexível e eficiente para consultasFatos, dimensões e hierarquias

EsquemasEstrela, flocos de neve e constelação de fatos

Fases do projetoEscolha do: Processo de negócio, granularidade, dimensões e medidas de fatos (nesta ordem)

Page 23: 08 - DW - Modelagem Dimensional para Datawarehouses

23

48

Exemplo de tabela Tempo

date key full date

day of week

day num in month

day num

overallday

name

day abbre

vweekday

flag

week num in year

week num

overall

week begin date

week begin date key month

month num

overallmonth name

month abbrev

1 1/1/96 1 1 1 Monday Mon y 1 1 1/1/96 1 1 1 January Jan2 1/2/96 2 2 2 Tuesday Tue y 1 1 1/1/96 1 1 1 January Jan3 1/3/96 3 3 3 WednesdaWed y 1 1 1/1/96 1 1 1 January Jan4 1/4/96 4 4 4 Thursday Thu y 1 1 1/1/96 1 1 1 January Jan5 1/5/96 5 5 5 Friday Fri y 1 1 1/1/96 1 1 1 January Jan6 1/6/96 6 6 6 Saturday Sat n 1 1 1/1/96 1 1 1 January Jan7 1/7/96 7 7 7 Sunday Sun n 1 1 1/1/96 1 1 1 January Jan8 1/8/96 1 8 8 Monday Mon y 2 2 1/8/96 8 1 1 January Jan9 1/9/96 2 9 9 Tuesday Tue y 2 2 1/8/96 8 1 1 January Jan

49

ExercícioSuponha 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.