Você está na página 1de 42

Cadeia de Lojas

Sistemas de Apoio à Decisão


Cadeia de Lojas
• Sumário
• Caso de Estudo: Cadeia de Lojas
• Descrição do problema
• Modelo Dimensional
• Granularidade
• Dimensões
• Factos ou medidas numéricas
• Caracterização das dimensões
• Estimativa do Tamanho do DW

Sistemas de Apoio à Decisão 2


Introdução
• Modelação dimensional
• É um processo top-down
• Deve adotar-se a perspetiva do utilizador
final (gestor/decisor) para escolher as
dimensões e os factos a incluir no data
warehouse

Sistemas de Apoio à Decisão 3


Introdução
• Passos do processo de modelação
1. Escolher o processo de negócio
2. Definir a granularidade do processo de
negócio
3. Escolher as dimensões que vão
caracterizar cada registo da tabela de
factos
4. Definir os factos ou medidas numéricas
a incluir na tabela de factos

Sistemas de Apoio à Decisão 4


Cadeia de Lojas
• Descrição do problema
• Cadeia de 100 lojas em vários distritos
• Cada loja tem vários departamentos:
mercearia, congelados, carne, panificação,
vegetais, etc.
• Cada loja vende cerca de 50.000 produtos
• Cada produto é identificado por:
• SKU (Stock Keeping Unit)
• UPC (Universal Product Code)
• Cada produto tem associado um SKU e um
UPC único (SKU  UPC)
Sistemas de Apoio à Decisão 5
Cadeia de Lojas
• Descrição do problema
• Objetivos de gestão: logística de
abastecimento e vendas, maximização
do lucro
• Maximização do lucro
• Vender os produtos ao maior preço possível
• Reduzir os custos de aquisição dos produtos
• Atrair o maior número possível de clientes
• Decisões mais importantes dos gestores
• Estabelecimento de preços e promoções

Sistemas de Apoio à Decisão 6


Cadeia de Lojas
• Descrição do problema
• Tipos de promoções à disposição dos
gestores
• Reduções temporárias de preços
• Acumulação de descontos
• Anúncios
• Cartazes
• Cupões
• ...

Sistemas de Apoio à Decisão 7


Cadeia de Lojas
• Sumário
• Caso de Estudo: Cadeia de Lojas
• Descrição do problema
• Modelo Dimensional
• Granularidade
• Dimensões
• Factos ou medidas numéricas
• Caracterização das dimensões
• Estimativa do Tamanho do DW

Sistemas de Apoio à Decisão 8


Cadeia de Lojas
1. Processo de negócio a modelar
• Construir um data warehouse que
permita analisar as vendas de produtos,
junto dos clientes, nas lojas, ao longo do
tempo
• Pretende-se estudar o efeito das
promoções nas vendas
• Questão
• Onde e como são recolhidos os dados?

Sistemas de Apoio à Decisão 9


Cadeia de Lojas
2. Granularidade
• A granularidade, além do nível de
detalhe dos dados, determina a
dimensionalidade do data warehouse e
tem um forte impacto no seu tamanho
• Algumas possibilidades:
• Transação de cada produto (linha de venda)
• Totais diários de cada produto em cada loja
• Totais semanais de cada produto em cada loja
• …
• Total de cada venda em cada loja
Sistemas de Apoio à Decisão 10
Cadeia de Lojas
• Granularidade do processo de negócio
• Totais diários, semanais, mensais, …
• Tabelas de factos de sumarização periódica
• O que é que se perderia se apenas
guardássemos os totais semanais ou
mensais?
• Ver a diferença das vendas entre dias
diferentes da semana
• Estudar o efeito diário de uma determinada
promoção

Sistemas de Apoio à Decisão 11


Cadeia de Lojas
• Granularidade do processo de negócio
• Transação de cada produto
• Nível atómico dos dados
• Primeira hipótese a considerar
• Tabela de factos transacional
• Guardar cada transação faz com que o Data
Warehouse tenha um tamanho considerável
• Poderá nem sempre existir informação
acerca do cliente
• Inviabiliza estudos de comportamento
• Granularidade adotada para o caso de
estudo da Cadeia de Lojas
Sistemas de Apoio à Decisão 12
Cadeia de Lojas
3. Dimensões
• Modelo dimensional inicial
Data Produto
chave_data How? chave_produto
When What
...
Vendas ...
chave_data
Hora chave_hora
Cliente
chave_produto
chave_hora
chave_cliente chave_cliente
When Who
chave_loja
...
chave_promoção ...
id_transacao
Promoção Loja

chave_promoção chave_loja
Why Where
... How Many? ...

Sistemas de Apoio à Decisão 13


Cadeia de Lojas
• Princípio dos 7Ws
7Ws Dados Exemplos de dimensões e factos
Who Pessoas e Cliente, Empregado, Estudante, etc.
organizações
What Coisas Produto, Serviço, etc.

When Tempo Data do calendário, Hora do dia, etc.

Where Locais Loja, Hospital, Agência, Escola, etc.

Why Razões e Promoção, Clima (estado do tempo), etc.


causalidade
How IDs de ID compra, ID transação, ID fatura, etc.
transações (Dimensões degeneradas)
How many Medidas e Quantidade (factos)
KPIs
Sistemas de Apoio à Decisão 14
Cadeia de Lojas
• Dimensões adicionais
• Serão necessárias mais dimensões?
• Gestor de loja
• Empregado
• Fornecedor, etc.
• Podem-se acrescentar outras dimensões
desde que exista apenas um valor
dessas dimensões para cada combinação
de valores das dimensões já existentes
• Se isso não acontecer, é necessário
rever a granularidade do modelo
Sistemas de Apoio à Decisão 15
Cadeia de Lojas
• Dimensões
• Granularidade da dimensão produto
• Vale a pena guardar os dados de todos
os produtos individualmente
• Exemplo: diferentes tamanhos de caixas?
• Quase sempre faz sentido guardar os
dados acerca das dimensões com a
maior granularidade possível
• O objetivo não é ver cada registo
individualmente, mas permitir que as
pesquisas sejam mais precisas
Sistemas de Apoio à Decisão 16
Cadeia de Lojas
4. Factos ou medidas numéricas
• Por vezes a determinação dos factos
pode implicar ajustamentos ao nível da
granularidade ou das dimensões
• Factos que interessam aos gestores, a
incluir na tabela de factos
• Valor rendido
• Quantidade vendida
• Custo de aquisição
• Desconto
• Flags, …
Sistemas de Apoio à Decisão 17
Cadeia de Lojas
• Aditividade dos Factos
• Factos aditivos: podem ser somados ao
longo de todas as dimensões
• Exemplo: Valor rendido, flags, etc.
• Factos semi-aditivos: apenas podem ser
somados ao longo de algumas dimensões
• Exemplo: saldos, valores em stock, etc.
• Factos não aditivos: não podem ser
somados para nenhuma das dimensões
• Exemplo: percentagens, rácios, medidas de
intensidade, médias, mínimos, máximos, …
Sistemas de Apoio à Decisão 18
Cadeia de Lojas
• Atualização do modelo dimensional
• Factos
Data Produto
chave_data Vendas chave_produto
chave_data
... chave_hora ...
chave_produto
chave_cliente
Hora chave_loja Cliente
chave_hora chave_promoção chave_cliente
id_transacao (DD)
... ...
valor rendido
unidades vendidas
Promoção Loja
custo de aquisição
chave_promoção chave_loja
desconto

... ...

Sistemas de Apoio à Decisão 19


Cadeia de Lojas
• Tabela de factos
• Tipicamente cada registo da tabela de
factos ocupa pouco espaço
• Na tabela do modelo dimensional da
cadeia de lojas cada registo ocupa
• 11 * 4 bytes = 44 bytes
• 7 chaves
• 4 factos ou medidas numéricas
• No entanto ...

Sistemas de Apoio à Decisão 20


Cadeia de Lojas
• Normalizar ou não normalizar ...
• A tabela de factos de um modelo
dimensional é naturalmente normalizada
• As tabelas de dimensão, não!
• A tabela de factos é muito maior que as
tabelas de dimensão
• Na maioria dos casos é uma perda de
tempo tentar normalizar as tabelas de
dimensão

Sistemas de Apoio à Decisão 21


Cadeia de Lojas
• Browsing
• Atividade em que o utilizador explora
uma única dimensão com o objetivo de
definir colunas e restrições para uma
pesquisa posterior
• Frequentemente, consiste em verificar o
valor de determinados atributos quando
se restringe o valor de outros atributos
• A normalização das tabelas de dimensão
dificultaria este tipo de atividade

Sistemas de Apoio à Decisão 22


Cadeia de Lojas
• Browsing: Exemplo
• Quais as lojas do concelho de Pombal,
distrito de Leiria, em estilo antigo?

Campo Nome da loja Concelho Distrito Estilo

Restrição
Adérito Águeda Aveiro Antigo
Valores António Condeixa Coimbra Moderno
distintos Maria Nazaré Leiria Luxo
Natália Pombal
Rodrigues
Simões

Sistemas de Apoio à Decisão 23


Cadeia de Lojas
• Browsing: Exemplo
• Quais as lojas do concelho de Pombal,
distrito de Leiria, em estilo antigo?

Campo Nome da loja Concelho Distrito Estilo


Restrição Pombal Leiria Antigo
Adérito Pombal Leiria Antigo
Valores
Rodrigues
distintos

Sistemas de Apoio à Decisão 24


Cadeia de Lojas
• Dimensão Tempo (Data/Hora)
• Presente obrigatoriamente em todos os
Data Warehouses
• Vantagens em relação à data/hora em
SQL
• Permite a análise em períodos do dia
• Permite análise de dias da semana vs. fins
de semana
• Facilita divisão em períodos fiscais
• Permite análise de vendas em feriados,
datas especiais, etc.
Sistemas de Apoio à Decisão 25
Cadeia de Lojas
• Dimensão Data
• Cada registo na dimensão Data
representa um dia
• A tabela é construída por quem
implementa o Data Warehouse
• Dados não são obtidos dos sistemas fonte
• Pode conter dias que ainda não
aconteceram
• Contém campos que permitem a análise
de dados em períodos temporais
• Semestre, trimestre, estação, ...
Sistemas de Apoio à Decisão 26
Cadeia de Lojas
Data
• Dimensão Data chave_data

• “feriado”, “fim de semana” dia do mês


dia da semana
e “último dia do mês” são mês

flags ano
número global do dia

• “acontecimento especial” e número da semana no ano


número global da semana
“estação do ano” devem ser número global do mês

campos de texto trimestre


período fiscal

• Podemos combinar campos feriado


fim de semana
diferentes: último dia do mês

• Fins de semana em períodos estação do ano


férias
de férias acontecimento especial …

Sistemas de Apoio à Decisão 27


Cadeia de Lojas
Hora
• Dimensão Hora chave_hora

• “periodo do dia”, campo de segundo

texto com a indicação dos minuto


hora
vários períodos do dia periodo do dia

• Manhã, período de almoço,


minutos depois fecho

tarde, etc.
• “minutos depois fecho”
indica quantos minutos
decorreram depois da hora
de fecho das lojas

Sistemas de Apoio à Decisão 28


Cadeia de Lojas
• Dimensão Produto
• Construção facilitada pois devem estar
disponíveis os registos usados nas caixas
registadoras (POS – Point of Sale)
• Os atributos a considerar devem ser
aqueles que serão usados nas pesquisas
• Tal como acontece geralmente com as
tabelas de dimensão, não se deve
normalizar a tabela
• Cria dificuldades à pesquisa e o ganho de
espaço é reduzido
Sistemas de Apoio à Decisão 29
Cadeia de Lojas
Produto
• Dimensão Produto chave_produto

• “dieta” é uma flag nome


itens por embalagem

• “altura”, “largura” e marca

“profundidade” dizem
subcategoria
categoria

respeito à embalagem departamento


tipo de embalagem

• Campos textuais devem dieta

ser tão descritivos quanto


peso
unidade de peso

possível unidades por caixa retalho


caixas por palete
largura
altura
profundidade
...

Sistemas de Apoio à Decisão 30


Cadeia de Lojas
• Hierarquias de Atributos
• Por vezes, alguns atributos das
dimensões estão relacionados
hierarquicamente
• Exemplo: marca -> subcategoria ->
categoria -> departamento
• A definição de hierarquias explícitas
facilita as operações de drill-down e roll-
up

Sistemas de Apoio à Decisão 31


Cadeia de Lojas
• Drill-down / Roll-up
Departamento Vendas € Unidades
Padaria 12331 5088
Congelados 31777 15565
Mercearia 100756 48885
Fotografia 8079 1274 Roll-up
Drill-
down Departamento Dieta Vendas € Unidades
Padaria Sim 331 88
Padaria Não 12000 5000
Congelados Sim 777 565
Congelados Não 31000 15000
... ... ... ...

Sistemas de Apoio à Decisão 32


Cadeia de Lojas
Loja
• Dimensão Loja chave_loja

• Ao contrário da dimensão nome

produto, os dados para


número
endereço

esta dimensão estão cidade


concelho
normalmente dispersos departamento

• Esta dimensão permite


distrito
país

pesquisas geográficas região


telefone
• Deve ser incluída uma fax

hierarquia geográfica
gestor
data de abertura
área total
área de congelados
...

Sistemas de Apoio à Decisão 33


Cadeia de Lojas
• Dimensão Promoção
• É talvez a dimensão mais interessante
do ponto de vista do gestor
• Promoções avaliadas por:
• Aumento de vendas durante a promoção
• Diminuição de vendas após a promoção
• Redução de vendas de outros produtos
• Aumento de vendas de produtos da mesma
categoria
• Dados da tabela definidos pelos gestores

Sistemas de Apoio à Decisão 34


Cadeia de Lojas
• Dimensão Promoção Promoção

• “tipo de promoção” pode chave_promoção

indicar se é redução de nome da promoção


tipo de promoção
preço, cupão, anúncio, tipo de anúncio

cartaz, ... tipo de cartaz


tipo de cupão

• Como podemos saber meio utilizado no anúncio


custo da promoção
quais os produtos que não data de início

se venderam? data de fim


...

Sistemas de Apoio à Decisão 35


Cadeia de Lojas
• Dimensão Cliente
• É uma dimensão muito interessante pois
possibilita estudos de comportamento
• Apresenta muitos desafios
• Por vezes muitos clientes
• Dados mudam com muita frequência
• Estudos de comportamento:
• Definir o perfil do cliente
• Direcionar promoções ao cliente
• Nem todas as vendas têm associado um
cliente
Sistemas de Apoio à Decisão 36
Cadeia de Lojas
Cliente
• Dimensão Cliente chave_cliente

• “numero do cartao” indica numero do cartao

o número do cartão de saldo do cartao


nome
fidelização do cliente sexo
idade
• Os campos demográficos estado civil

são os mais interessantes profissao


endereço

• Alguns campos dão localidade

origem a dimensões
codigo postal
concelho

especiais distrito
telemóvel
e-mail
...

Sistemas de Apoio à Decisão 37


Cadeia de Lojas
• Modelo dimensional final Produto
chave_produto
Data Vendas
chave_data chave_data nome
chave_hora marca
dia do mês chave_produto ...
... chave_cliente
Cliente
chave_loja
Hora chave_cliente
chave_promoção
chave_hora id_transacao (DD)
numero do cartao
segundo valor rendido nome
... unidades vendidas ...
custo de aquisição
Promoção Loja
desconto
chave_promoção chave_loja

nome da promoção nome


tipo de promoção cidade
... ...

Sistemas de Apoio à Decisão 38


Cadeia de Lojas
• Sumário
• Caso de Estudo: Cadeia de Lojas
• Descrição do problema
• Modelo Dimensional
• Granularidade
• Dimensões
• Factos ou medidas numéricas
• Caracterização das dimensões
• Estimativa do Tamanho do DW

Sistemas de Apoio à Decisão 39


Cadeia de Lojas
• Estimativa do tamanho do DW
• Cenário
• Dimensão tempo
• 3 anos x 365 dias = 1095 dias
• Dimensão loja: 100 lojas
• Em média 100.000 transações por dia em
cada loja
• Número de registos da tabela de factos
1095 x 100 x 100000 = 10.950.000.000
• Tamanho da tabela de factos:
10.950.000.000 * 44 bytes = 448,7 GByte

Sistemas de Apoio à Decisão 40


Cadeia de Lojas
• Exercício
• Granularidade do Data Warehouse
• Totais diários de cada produto
• Modelo Dimensional
• Dimensões
• Factos ou medidas numéricas
• Estimativa do tamanho do DW
• Cubo (hipercubo) de dados
• Num sistema ROLAP
• Num sistema ROLAP, com estruturas de
dados de otimização
Sistemas de Apoio à Decisão 41
Cadeia de Lojas
• Referências
• The Data Warehouse Toolkit, R. Kimball,
John Wiley & Sons, 2013 (3ª edição)
• Capítulo 3

Sistemas de Apoio à Decisão 42

Você também pode gostar