Data WarehouseData WarehouseProcesso de Projeto Processo de Projeto
Dimensional - Estudo de Dimensional - Estudo de Caso: VendasCaso: Vendas
Processo de Design em Quatro PassosProcesso de Design em Quatro Passos
1.1. SelecSelecççionar o processo de negócios a modelarionar o processo de negócios a modelar2.2. Declarar a granularidade do processoDeclarar a granularidade do processo3.3. Escolher as dimensões que se aplicam a cada linha da tabela Escolher as dimensões que se aplicam a cada linha da tabela
de factosde factos4.4. Identificar os factos numéricos que irão populacionar a Identificar os factos numéricos que irão populacionar a
tabela de factotabela de factoss Tanto requisitos dos usuários do negócio quanto realidades Tanto requisitos dos usuários do negócio quanto realidades
dos dados fonte devem ser levados em consideração no dos dados fonte devem ser levados em consideração no projectoprojecto
Processo de Design em Quatro PassosProcesso de Design em Quatro Passos
SelecSelecççionar o processo de negócios a modelarionar o processo de negócios a modelar Actividade executada na organizaçãoActividade executada na organização
Compras, vendas, pedidos, inventario,Compras, vendas, pedidos, inventario, Obtido atraves de conversas com usuáriosObtido atraves de conversas com usuários Não está restrito a um único departamentoNão está restrito a um único departamento
E.g., pedidos podem envolver departamentos de E.g., pedidos podem envolver departamentos de vendas e marketingvendas e marketing
Processo de Design em Quatro PassosProcesso de Design em Quatro Passos
Declarar a granularidade do processoDeclarar a granularidade do processo Especificar explicitamente o que uma linha da tabela de Especificar explicitamente o que uma linha da tabela de
factos significafactos significa O grão indica o nível de detalhes associados com cada O grão indica o nível de detalhes associados com cada
linha da tabelalinha da tabela Exemplos:Exemplos:
Uma linha do recibo de vendas do supermercadoUma linha do recibo de vendas do supermercado Um snapshot das vendas diarias de cada produtoUm snapshot das vendas diarias de cada produto Um extracto mensal do bancoUm extracto mensal do banco
Passo extremamente importante!Passo extremamente importante!
Processo de Design em Quatro PassosProcesso de Design em Quatro Passos
Escolher as dimensões que se aplicam a cada linha da tabela Escolher as dimensões que se aplicam a cada linha da tabela de factosde factos Dimensões respondem à questão “como as pessoas do Dimensões respondem à questão “como as pessoas do
negócio descrevem os dados que resultam dos processos negócio descrevem os dados que resultam dos processos do negócio?”do negócio?”
Com as escolhas de cada dimensão serão listados todos os Com as escolhas de cada dimensão serão listados todos os atributos discretos, textuais, etc, de cada tabela de atributos discretos, textuais, etc, de cada tabela de dimensãodimensão
Exemplos:Exemplos: Data, produto, cliente, tipo de transação, status Data, produto, cliente, tipo de transação, status
Processo de Design em Quatro PassosProcesso de Design em Quatro Passos
Identificar os factos numéricos que irão populacionar a tabela Identificar os factos numéricos que irão populacionar a tabela de factosde factos Respondem à pergunta “O que estamos medindo?”Respondem à pergunta “O que estamos medindo?” Devem estar em conformidade com a granularidade Devem estar em conformidade com a granularidade
escolhidaescolhida Exemplos:Exemplos:
Quantidade pedida, custo em dolaresQuantidade pedida, custo em dolares
O negócio: cadeia de lojasO negócio: cadeia de lojas
O negócio tem 100 lojas de cadeia em cinco estadosO negócio tem 100 lojas de cadeia em cinco estados Cada loja tem departamentos de: comidas congeladas, Cada loja tem departamentos de: comidas congeladas,
carnes, paes, complementos alimenticios, etccarnes, paes, complementos alimenticios, etc Cada loja tem aproximadamente 60.000 produtos nas suas Cada loja tem aproximadamente 60.000 produtos nas suas
prateleirasprateleiras Os produtos individuais são chamados Os produtos individuais são chamados unidades em estoque unidades em estoque
(SKU)(SKU) Cerca de 55.000 produtos vêm de fabricantes externos e Cerca de 55.000 produtos vêm de fabricantes externos e
têm codigos de barras impressos no pacote do produto têm codigos de barras impressos no pacote do produto chamados chamados codigos de produto universais codigos de produto universais (UPC)(UPC)
As 5.000 unidades de estoque restantes vêm dos As 5.000 unidades de estoque restantes vêm dos departamentos da cadeia e têm codigos locais individuaisdepartamentos da cadeia e têm codigos locais individuais
Dados são colectados principalmente nos caixas da loja Dados são colectados principalmente nos caixas da loja Os codigos de venda do produtos são escaneados no pontos Os codigos de venda do produtos são escaneados no pontos
de venda (PV)de venda (PV) Outro ponto de colecta de dados é na entrada traseira das Outro ponto de colecta de dados é na entrada traseira das
lojas onde os fornecedores entregam as encomendaslojas onde os fornecedores entregam as encomendas
O negócio: cadeia de lojasO negócio: cadeia de lojas
Nas lojas, a administração está preocupada com Nas lojas, a administração está preocupada com logisticas de pedidos, armazenamento, e vendas de logisticas de pedidos, armazenamento, e vendas de produtos enquanto tenta maximizar o lucroprodutos enquanto tenta maximizar o lucro
Lucro vem da venda no melhor preço possivel para Lucro vem da venda no melhor preço possivel para cada produto, da redução de custos na aquisição de cada produto, da redução de custos na aquisição de produtos, e da atracção do maior numero de produtos, e da atracção do maior numero de clientes possivel atraves de preços competitivosclientes possivel atraves de preços competitivos
As decisões mais importantes tem haver com As decisões mais importantes tem haver com preços e promoçõespreços e promoções
Promoções incluem reduções temporarias de Promoções incluem reduções temporarias de preços, propagandas em jornais, amostras em preços, propagandas em jornais, amostras em lojas, e cupons.lojas, e cupons.
Passo 1. Seleccionar o Processo de Passo 1. Seleccionar o Processo de negóciosnegócios
O primeiro modelo dimensional a ser construido O primeiro modelo dimensional a ser construido deve ser aquela a causar maior impactodeve ser aquela a causar maior impacto
O modelo deveria responder as questões mais O modelo deveria responder as questões mais importantes do negócio e estar prontamente importantes do negócio e estar prontamente acessivel para extracção de dadosacessivel para extracção de dados
Escolha:Escolha: Vendas nos caixas!Vendas nos caixas! Entender que produtos estão sendo vendidos Entender que produtos estão sendo vendidos
em que lojas em que dias sobre quais em que lojas em que dias sobre quais condicões promocionaiscondicões promocionais
Passo 2. Declarar a GranularidadePasso 2. Declarar a Granularidade Utilizar a informação mais atômica e detalhada capturada por um Utilizar a informação mais atômica e detalhada capturada por um
processo de negóciosprocesso de negócios Provêm alta flexibilidade analítica; pode ser restrito, pesquisado, e Provêm alta flexibilidade analítica; pode ser restrito, pesquisado, e
agregado de diversas formasagregado de diversas formas Granularidades de mais alto nível limitam as dimensões e analisesGranularidades de mais alto nível limitam as dimensões e analises Escolha:Escolha:
Cada linha individual de uma transação no caixaCada linha individual de uma transação no caixa Analises:Analises:
Diferenças em vendas de Segunda a DomingoDiferenças em vendas de Segunda a Domingo Se vale apenas estocar pacotes de varios tamanhos de certos Se vale apenas estocar pacotes de varios tamanhos de certos
cereiascereias Quantos consumidores compraram um determinado shampoo Quantos consumidores compraram um determinado shampoo
durante uma promoção de 50% de descontodurante uma promoção de 50% de desconto O impacto nas vendas de uma propaganda “pesada” de uma O impacto nas vendas de uma propaganda “pesada” de uma
marca concorrentemarca concorrente
Passo 3. Escolher as DimensõesPasso 3. Escolher as Dimensões
Uma granularidade apropriada determina as dimensões Uma granularidade apropriada determina as dimensões primárias da tabela de factosprimárias da tabela de factos
ID_dataID_produtoID_loja
ID_promoção
ID_produtoatributos
ID_dataatributos
ID_lojaatributos
ID_produtoatributos
Passo 4. Identificar os factosPasso 4. Identificar os factos
ID_dataID_produtoID_loja
ID_promoçãoUnid_vendidasCusto_compraValor_vendaNº_clientes
ID_produtoatributos
ID_promoçãoatributos
ID_dataatributos
ID_lojaatributos
Dimensão de DataDimensão de Data Usada por quase todos data martsUsada por quase todos data marts Existem muitos atributos de datas que não são Existem muitos atributos de datas que não são
suportados pela função data do SQL, incluindo periodos suportados pela função data do SQL, incluindo periodos fiscais, feriados, periodos especias do ano (e.g., Natal, fiscais, feriados, periodos especias do ano (e.g., Natal, Carnaval) e fins de semana.Carnaval) e fins de semana.
Focado na granularidade de diasFocado na granularidade de dias 10 anos correspondem apenas a 3500 linhas10 anos correspondem apenas a 3500 linhas!!
Atributos da Tabelas de Dimensões DataAtributos da Tabelas de Dimensões Data
Atributos da Tabelas de Dimensões DataAtributos da Tabelas de Dimensões Data
Day-of-Week: analises de venda por dia da semanaDay-of-Week: analises de venda por dia da semana Day number e Month number: comparações do mesmo dia Day number e Month number: comparações do mesmo dia
cada mês e mesmo mês cada anocada mês e mesmo mês cada ano Holidays: Uso de labels com significadoHolidays: Uso de labels com significado Selling Season: Natal, Carnaval, etcSelling Season: Natal, Carnaval, etc Major event: dia das maes, dia dos namoradosMajor event: dia das maes, dia dos namorados Date key: inteiro, por razões de armazenamento, Date key: inteiro, por razões de armazenamento,
actualização, etcactualização, etc Inclusão de horas: time-of-the day table a ser juntadaInclusão de horas: time-of-the day table a ser juntada
Dados na Dimensão de DataDados na Dimensão de Data
Atributos da Tabelas de Dimensões ProdutoAtributos da Tabelas de Dimensões Produto
Descreve cada unidade em estoque na lojaDescreve cada unidade em estoque na loja Alguns atributos descritivos normalmente organizado em Alguns atributos descritivos normalmente organizado em
hieraquias: tipo -> categoria -> departamentohieraquias: tipo -> categoria -> departamento Integral -> pães -> padariaIntegral -> pães -> padaria
Um tabela de dimensão produto tipica teria 50 ou mais Um tabela de dimensão produto tipica teria 50 ou mais atributosatributos
Quanto mais completa, mais analises são possiveisQuanto mais completa, mais analises são possiveis
Atributos da Tabelas de Dimensões ProdutoAtributos da Tabelas de Dimensões Produto
Dimensão LojaDimensão Loja
Descreve cada loja da cadeiaDescreve cada loja da cadeia Principal dimensão geografica do estudo de casoPrincipal dimensão geografica do estudo de caso
Atributos geograficos: ZIP code (CEP) , distrito, estado, Atributos geograficos: ZIP code (CEP) , distrito, estado, etcetc
Descrição da loja (textual): floor plan type, financial type, Descrição da loja (textual): floor plan type, financial type, photo processing type photo processing type
Atributos da Tabelas de Dimensões LojaAtributos da Tabelas de Dimensões Loja
Dimensão PromoçãoDimensão Promoção
Descreve as condições de promoção sob os quais um Descreve as condições de promoção sob os quais um produto foi vendidoproduto foi vendido
Condições de promoção: reduções de preços temporarias, Condições de promoção: reduções de preços temporarias, anuncios em journais, displays, cupons, etcanuncios em journais, displays, cupons, etc
Dimensão causal: causa mudanças nos padrões de vendasDimensão causal: causa mudanças nos padrões de vendas Dica: evitar valores null, incluindo uma entrada para Dica: evitar valores null, incluindo uma entrada para
indicar explicitamente que a dimensão nao é aplicavel a indicar explicitamente que a dimensão nao é aplicavel a determinada medida (e.g., “nenhuma promoção em determinada medida (e.g., “nenhuma promoção em curso”)curso”)
Dimensão PromoçãoDimensão Promoção
- Análises:- Análises: Se os produtos sob promoção tiveram ganhos em vendas durante Se os produtos sob promoção tiveram ganhos em vendas durante
o periodo promocionalo periodo promocional Se os produtos sob promoção tiveram uma queda antes ou após a Se os produtos sob promoção tiveram uma queda antes ou após a
promoção, cancelando possiveis ganhospromoção, cancelando possiveis ganhos Se os produtos em promoção apresentaram ganhos mas os Se os produtos em promoção apresentaram ganhos mas os
produtos proximos nas prateleiras apresentaram declinioprodutos proximos nas prateleiras apresentaram declinio Se todo os produtos em promoção apresentaram ganhos Se todo os produtos em promoção apresentaram ganhos
conjuntamente levando em contas os periodos anterior, durante conjuntamente levando em contas os periodos anterior, durante e posterior às promoções (crescimento de mercado)e posterior às promoções (crescimento de mercado)
Se a promoção como um todo foi rentavelSe a promoção como um todo foi rentavel
Atributos das Tabelas de Dimensão PromoçãoAtributos das Tabelas de Dimensão Promoção
Retail Esquema em AcçãoRetail Esquema em Acção Cenario: um usuário do negócio esta interessado em Cenario: um usuário do negócio esta interessado em
entender melhor as vendas semanais por promoção para a entender melhor as vendas semanais por promoção para a categoria de salgadinhos durante Janeiro de 2002 para as categoria de salgadinhos durante Janeiro de 2002 para as lojas do distrito de Boston lojas do distrito de Boston
Esquema de Vendas em AcçãoEsquema de Vendas em Acção ResultadoResultado
ID_produtoNúmeroNomeMarca
CategoriaSubcategoriaDepartamentoTam_embalagemTipo_embalagem
Tipo_dietaPeso
Unidade_de_pesoQuant_caixa
Caixas_p_palleteLarg_prateleiraAltura_prateleiraProfun_prateleira
ID_lojaNome
Número_lojaEndereçoLocalidade
Código_postalDistritoRegiãoTelefone
FaxGestor_lojaÁrea_total
Área_merceariasÁrea_congelados
Área_bazarNº_Caixas
Data_inauguraçãoData_ult_remod
Dimensão ProdutoDimensão Loja
ID_dataDia_do_mês
Dia_da_semanaDia_do_ano
Semana_do_anoMês
Número_do_mêsTrimestre
Período_fiscalFlag_feriado
Flag_dia_semanaFlag_últ_dia_mêsEstação_ano
Aconteci_espec
Dimensão Tempo
ID_promoçãoNúmero
Nome_promoTipo_red_preçoTipo_anúncioTipo_cartazTipo_couponsMeio_anúncioMeio_cartaz
Custo_promoçãoInício_promoçãoFim_promoção
Dimensão Promoção
ID_produtoID_dataID_Loja
ID_PromoçãoUnid_vendidasCusto_compraValor_vendaNº_clientes
Retail Esquema em AcçãoRetail Esquema em Acção
Extensibilidade do Esquema de VendasExtensibilidade do Esquema de Vendas
Normalização de DimensõesNormalização de Dimensões
Normalização de DimensõesNormalização de Dimensões
Apresentação muito mais complexaApresentação muito mais complexa Complexidade tambem na optimização de consultas Complexidade tambem na optimização de consultas
(muitos joins)(muitos joins) Ganhos de espaço são irrisoriosGanhos de espaço são irrisorios Navegação é comprometidaNavegação é comprometida
Dimensões DemaisDimensões Demais
Dimensões DemaisDimensões Demais
Um numero muito grande de dimensões é Um numero muito grande de dimensões é tipicamente um sinal que diversas dimensões não tipicamente um sinal que diversas dimensões não são completamente independentes e devem ser são completamente independentes e devem ser combinadas em uma única dimensão.combinadas em uma única dimensão.
Dimensões demais geram problemas de usabilidade Dimensões demais geram problemas de usabilidade e performancee performance
É geralmente um erro representar elementos de É geralmente um erro representar elementos de uma hierarquia em dimensões separadas uma hierarquia em dimensões separadas
Top Related