Modelando negócios com Tabelas Fato.

Tabelas Fato ou esquema da estrela é um processo de modelagem de negócios que visa estruturar um banco de dados numa tomada de decisão, antes dele ser construído. Mas um banco de dados relacional, onde o dado é explorado com a finalidade de ser uma informação. Esta útil aos setores de decisão e capazes de executar ações benéficas a corporação.

Analisando o negócio (Foto: Reprodução/Internet)
Analisando o negócio (Foto: Reprodução/Internet)

Um pequeno resumo sobre o que vimos nas partes anteriores a seguir: Na parte 1 introduzi o que significava Big Data, sua relação com o mundo dos negócios, análises pelo método do Cubo. Na parte 2 expliquei o que era banco de dados transacional e relacional, sua importância para o marketing e realizei uma prática com o código SQL para criação de um banco de dados. Na parte 3 mostrei um case do Google como exemplo de um Big Data a ser modelado e utilizado na próxima versão web (Web 3.0) como sistemas de apoio a decisão.

Nesta parte irei demonstrar como fazer um banco de dados relacional funciona utilizando um desenho conhecido como ‘Tabelas Fatos’ unidos ao seus dois métodos de filtragem e mineração de dados conhecidos como Star Schema e Snowflake Schema. Este tipo de desenho não pode ser confundido com a UML (Unique Modelling Language) que também chega a tratar de negócios e nem como BPMN (Business Process Modelling Notation).

Publiquei um artigo no site no Portal dos Administradores onde demonstro como trabalhar com uma tabela fato utilizando o esquema estrela – clique em ‘Métodos de análises de segmentação‘. E demonstro numa esquema como os dados brutos são extraídos de um banco de dados transacional (OLPT) e transferidos(ETL) para um banco de dados relacional(OLAP).

O que é Tabela Fato?

Este ‘universo’ de análise é um estudo de banco de dados exclusivo da linha de pesquisa de Ciência da Computação. Que tem por finalidade analisar, peneirar e gerar instâncias (informações) com o cunho de decisão. Este é um recurso utilizado para se trabalhar com banco de dados relacionais (ou database marketing).

Como matéria de revisão, database marketing é um sub-produto obtido através de um plano, estratégia e definição de objetivos com dados essenciais através de um Big Data ou banco de dados transacional.

Esquema de estrela (Foto: Reprodução/Internet)
Esquema de estrela (Foto: Reprodução/Internet)

Os elementos que fazem parte de uma tabela fato são as seguintes.

  • Fato (A questão a ser respondida)
  • Dimensões (Informações, setores, locais, pesquisa, bibliotecas) para responder o Fato
  • Chave (Referente ao dado que corresponde á uma série de atributos\características)
  • Funções (Refere-se como este dado será trabalhado para enfim responder o Fato)
  • Instância (Informação gerada a partir da resposta do Fato)

Quando temos um banco de dados automatizado, nos resta a utilizar funções sobre os dados que nos interessam para responder a questão. No entanto mesmo um sistema automático, o marketing trabalha com uma base de informações em referência á alguma coisa. Esta referência é justamente a definição da “PERGUNTA” (Fato) baseado numa operação em execução (Dimensões) que geram obviamente resultados (Chave) e que possuem atributos.

O setor de Marketing avalia através de ‘cálculos’ (funções) os dados que lhe interessam, digamos que a média da renda de uma loja de departamentos de esportes no mês de janeiro-abril de 2013 enquanto ocorria uma promoção de 15% para todos os clientes antigos da casa (critério de antiguidade definido).

Os dados quando filtrados geram um outro dado, que pode ser considerado inclusive uma informação por inteiro. Mas normalmente todos os dados precisam ser avaliados dentro de um cenário para gerarem uma informação completa e plausível para ser utilizada numa tomada de decisão (Instância).

Metadados: Dicionário de dados e modelagem.

O processo de definição de negócio inicia sempre com um Business Plan, e depois cada atividade é estruturada nos mínimos detalhes. Este tipo de processo é conhecido como definição de dados. O que cada dado será? Digamos que para conseguir saber que loja vendeu mais, é necessário saber o valor monetário da renda (estipulada em qual moeda, sob a influência de que taxa do dólar, e que tipo de câmbio [Paralelo, turismo e etc]).

O DD (Dicionário de dados) como é normalmente conhecido defini o dado e o definição do mesmo (tipo básico). Normalmente definimos que um valor monetário seja um número real. A informação de que isso é lucro é definido como um flag (bandeira). Como bandeira positiva ou negativa. Se for o primeiro, gerou lucro senão gerou prejuízo.

As metas anteriores vão definir o valor deste FLAG. Nisso consiste uma avaliação mais precisa. Sabemos em qual influência exata em valor de reais com influência do dólar, naquele setor, se ele gerou lucro ou prejuízo. O que isso significaria para um gestor de marketing? Baseado na questão levantada (Fato), a instância pode ser criada. Neste exato momento sabemos que há uma precisão de dados concretos.

Modelagem de negócios (Foto: Reprodução/Internet)
Modelagem de negócios (Foto: Reprodução/Internet)

O DMD (Dicionário de modelagem de dados) define como o dado será filtrado, trabalhado e tratado. Ou seja como ele será coletado, transformado e armazenado (Extraction Transformation Loading) e como definir as funções para obter informações consolidadas.

Queremos a loja que vendeu mais. Então como trabalhar e quais dados coletar para respondermos a esta pergunta. Neste processo nós definimos as “dimensões”. Imagine que para saber que loja vendeu mais, nós precisamos, dos dados da loja, dos dados da venda, dos dados dos produtos, em que período isso ocorreu e em que localidade. Se detalharmos mais, teremos que definir que dados de cada dimensão são essenciais:

  • Dimensão (LOJA) – dados (Endereço, tipo de departamento, tipo de produtos, tipo de loja, tamanho da loja, extras da loja);
  • Dimensão (VENDA) – dados (Tipo de venda, lucro total + promoção, lucro total – promoção, tipo de ação venda);
  • Dimensão (PRODUTOS) – dados (preço de pacote, preço de unidade, promoção produtos, categoria produtos, setor produtos, fabricante produtos, produtos marca própria);
  • Dimensão (TEMPO) – dados (Ano, mês, semestre, trimestre, bimestre, semana, dia, hora, feriado FLAG);
  • Dimensão (REGIÃO) – dados (País, estado, bairro, tipo terreno, tipo população).

Diferença entre métodos de Estrela e Snowflake.

Antes de partirmos para uma ilustração que torne tudo mais fácil de entender. O método de estrela lida com uma QUESTÃO (FATO) e FONTES (DIMENSÕES) dentro de uma análise flat (plana). Muito técnico?

Imagine responder uma pergunta simples, você coleta informações baseada numa memória de bolso. Você tem FONTES que você acessa para ter dados que se conectem (funções) e lhe dê a resposta da questão. Eis uma pergunta: Qual é sua idade?.

Se você for mais jovem, possivelmente vai perguntar para mãe. Se for mais velho, vai deduzir de tanto saber disso, de saber que nasceu em tal data. No entanto mentalmente, quase automático, seu cérebro considerou as dimensões de análise (FONTES) – HÁBITO DE COMEMORAR SEU ANIVERSÁRIO, SABER QUE DATA NASCEU E SUBTRAIR AUTOMATICAMENTE DA ATUAL, UMA MEMÓRIA QUE REFERENCIE SUA IDADE ATUAL.

Entendendo os métodos Estrela e Snowflake (Foto: Reprodução/Internet)
Entendendo os métodos Estrela e Snowflake (Foto: Reprodução/Internet)

Ou ainda mais simples, imagine uma pergunta e você coloca na mesa planos de como respondê-la.

No esquema snowflake existe um ‘desenvolvimento’ de dimensões analíticas. No desenho é mais fácil visualizar, mas a escrita é necessária. Então imagine que sua dimensão TEMPO precise de uma informação que a complete. Vamos considerar um calendário de eventos da cidade. A dimensão TEMPO impacta diretamente na loja. E esta loja está localizada numa cidade que possui eventos, épocas do ano com mais neve, mais chuva, temporada de insetos. Estas datas todas são organizadas num calendário digamos “FENÔMENOS NATURAIS DA REGIÃO X”.

Este calendário é “conectado em extensão” da dimensão “TEMPO” que também pode ter conexão extendida com a dimensão “REGIÃO”. Difícil? Acabou a maratona de textos, vamos ver os desenhos que fará justiça á uma explicação mais “trivial” e clara.

Esquema Estrela e Snowflake.

Vamos considerar o CASE DA LOJA anterior.

Esquema Estrela - CASE LOJA LUCRATIVA (Foto:Mundo Pauta)
Esquema Estrela – CASE LOJA LUCRATIVA (Foto:Mundo Pauta)
Esquema Snowflake (Foto: Mundo Pauta)
Esquema Snowflake (Foto: Mundo Pauta)

No segundo caso, Snowflake é conhecido como “Floco de neve”. Na prática, um floco de neve pode ser ‘desmiuçado’. É o que acontece. Podemos escrever da dimensão ‘TEMPO’ de duas formas. Desta como está ilustrado, e a outra é definir uma CHAVE CALENDÁRIO CIDADE FENÔMENOS.

Os dados da dimensão “CALENDÁRIO CIDADE FENÔMENOS” será utilizado na dimensão tempo que será enviado tratado ou em forma bruta para a tabela FATO “LOJA LUCRATIVA”. Desta forma fica visível do que se trata tabelas fatos. E também como é que um database marketing funciona.

Para tornar completo este artigo, qual seria a instância criada neste caso. Vamos pegar duas funções da tabela fato. As SOMA(VENDAS) – NoPro e TOTAL(Produto_Pack). A primeira função ‘gera um valor inteiro’ de todas as vendas de produtos que não estavam em promoção e a segunda o um total de produtos em pacotes (Leve 3 pague 2, engradado e etc). Teremos uma informação, correto?

Nunca se pega uma função aleatoriamente, sem direcionar uma informação (regrinha básica do PDCA – Planejamento, direcionamento, controle e ação) de marketing. Conecta-se o dado de um com outro. Ou seja, vou achar o número de vendas de produtos em formato de pacote sem promoção. A instância será (exemplo): 2.500 produtos em pacote foram vendidos sem promoção.

Esta informação nos faz pensar a princípio, que as pessoas preferiram comprar produtos em pacotes, engradados sem promoção talvez por algum motivo. Não podemos ‘supor’, mas podemos teorizar. Pode ser porque o pacote ofereça mais unidades que comprar um produto unitário, o pacote em si já tem uma promoção interna. A questão de leve 3 pague 2, pode parece ser uma liquidação, mas existem tantos nos mercado, que certas linhas só se vendem assim, passam a não ser parte promocional.

Artigos para estender o assunto.

Curta Mundo Pauta | Siga @Mundo_Pauta | Negocie Rafael_Junqueira

Anúncios