Construir um projeto de Data Warehouse (DW) é dispendioso e demora um bom tempo. Tudo depende do tamanho da empresa, do número de bases de dados que irão integrar o projeto, interfaces com outros sistemas, quantidade de pessoas na equipe, comprometimento e dedicação para implementação, ferramentas utilizadas, etc.
Percebendo isso, os arquitetos resolveram segmentar a construção do DW, começando por departamentos até a criação do mesmo. Ao invés de fazer o caminho tradicional, que é construir um DW e a partir dele os Data Marts (DM´s), fizeram o contrário. Começava-se pelos DM´s e esses iriam fazer a alimentação no Data Warehouse (DW). As vantagens são muitas. A principal é o tempo de implementação. Há alguns casos em que um DM para área comercial foi construído em apenas 3 meses.
Os Data Marts são bancos de dados modelados multidimensionalmente, orientados aos departamentos de uma empresa, por exemplo, a área comercial, financeira, marketing e logística construíram vários Data Marts (DM´s) cada uma. Ao final de dois anos, eles passaram a alimentar um DW que, depois de implementado, passou a fazer o caminho inverso, que é de alimentar os DM´s. Então com essa fundamentação, podemos definir que os DM´s podem surgir de duas maneiras. A primeira é top-down e a segunda é a botton-up.
- Top-down: é quando a empresa cria um DW e depois parte para a segmentação, ou seja, divide o DW em áreas menores gerando assim pequenos bancos orientados por assuntos aos departamentos.
- Botton-up: é quando a situação é inversa. A empresa, por estratégia sua, prefere primeiro criar um banco de dados para somente uma área. Com isso os custos são bem inferiores de um projeto de DW completo. A partir da visualização dos primeiros resultados parte para outra área e assim sucessivamente até resultar em um Data Warehouse.
A infra-estrutura de software e hardware é semelhante, porém a arquitetura dos dados pode ser bem diferente. No DW podemos ter o modelo de dados híbrido ou pode ser completamente relacional, já no DM o modelo é totalmente dimensional. A complexidade de tratamento das informações no DW é maior, porque temos de olhar toda a estrutura da empresa, já no DM fica mais fácil, pois estamos olhando apenas uma parte dela. Portanto, cabe a cada empresa avaliar a sua demanda e optar pela melhor solução. Segundo estimativas, enquanto um Data Mart custa em torno de US$ 100 mil a US$ 1 milhão e leva cerca de 120 dias para estar pronto, um DW integral começa em torno dos US$ 2 milhões e leva cerca de um ano para estar com a sua primeira versão em produção.
Áreas de Armazenamento
Staging (Staging Área)
- Recepção de dados
- Sem índices, sem constraints
- Carga rápida (bulk loading)
- Volátil
Data Warehouse (DW)
- Dados integrados e organizados por assunto
- Histórico de informações da empresa
- Esquema estrela (fatos e dimensões)
- Não-Volátil
- Metadados
- Grande volume de dados
Data Mart (DM)
- Dados agregados
- Não possui necessariamente um histórico das informações
- Esquema estrela (fatos e dimensões)
- Pode ser reconstruído a partir dos dados existentes no DW
- Pequeno volume de dados
- Otimizado para consultas pontuais
Tecnologias Utilizadas
- Banco de dados (Relacional ou Multi-dimensional)
- ETL (Extract, Transform and Load)
- OLAP (On Line Analytical Processing)
- Data-Mining
Importante: Todas essas tecnologias citadas acima têm as suas ferramentas e especializações adequadas ao negócio.
A última “camada” de análise e mensuração dos dados, o Data Mining (Mineração dos Dados), é responsável por extrair informações de grandes bancos de dados operacionais para construir segmentos e desenvolver modelos preditivos que são mais adequados para responder à pergunta de negócio em mãos e existem ferramentas para tal, porém falaremos mais sobre isso nos próximos artigos.
Formas de Construir um DW
Inmon x Kimball
Modelagem Multidimensional
É uma técnica de concepção e visualização de um modelo de dados de um conjunto de medidas que descrevem aspectos comuns de negócios. É utilizada especialmente para sumarizar e reestruturar dados e apresentá-los em visões (camada de apresentação) que suportam a análise dos valores desses dados.
Exemplo de modelo dimensional do Data Warehouse:
Um modelo multidimensional é formado por 3 elementos básicos:
- Fatos
- Dimensões
- Medidas (variáves)
Outro Exemplo de Modelo Dimensional
Fatos
É um coleção de itens de dados, composta de dados de medidas e de contexto.
Cada fato representa um item, uma transação ou um evento de negócio e é utilizado para analisar o processo de negócio de uma empresa. É tudo aquilo que reflete a evolução dos negócios do dia-a-dia de uma organização.
Características:
- É representada por valores numéricos
- Implementados em tabelas denominadas “tabelas de fato” (fact tables)
Dimensões
São elementos que participam de um fato, assunto de negócios.
São possíveis formas de visualizar os dados, ou seja, são os “por” dos dados: “por mês”, “por país”, “por produto”, “por região”, “por funcionário”, e por aí vai…
Dimensões normalmente não possuem atributos numéricos, pois são somente descritivas e classificatórias dos elementos que participam de um fato.
Tipos de Dimensões
- Dimensão “Normal”
Novas linhas criadas, sem deleção
- SCD Tipo 1
Sem preservação de histórico
- SCD Tipo 2
Preservação ilimitada de histórico
Novas linhas criadas
Coluna de status
- SCD Tipo 3
Retenção de histórico limitada
Dois estados são preservados: novo e antigo
Nova coluna criada
Medidas (variáveis)
São os atributos numéricos que representam um fato, a performance de um indicador de negócios relativo às dimensões que participam desse fato, e que tais números são denominados de variáveis.
Segundo Kimball, desenvolver um Data Warehouse é um questão de casar as necessidades dos seus usuários com a realidade dos dados disponíveis.
Bom, espero ter acrescentado mais sobre Ambientes de BI bem como os princípio básicos de construção de DW e DM. Nos próximos assuntos, estarei abordando sobre Arquitetura de DW. Até a próxima!
Referências Bibliográficas:
Tecnologia e Projeto de Data Warehouse, Felipe Nery Rodrigues Machado, 2007.