Uma boa definição seria a de Gupta, conceituado especialista na matéria: “um ambiente estruturado, extensível, projectado para a análise de dados não voláteis, lógica e fisicamente transformados, provenientes de diversas aplicações, alinhados com a estrutura da empresa, actualizados e mantidos durante um longo período de tempo, referidos em termos utilizados no negócio e sumariados para análise rápida”.
Do início da década de 90 até os dias de hoje, o conceito e a operação de um Datawarehouse saíram do âmbito teórico e académico para a área empresarial, notando-se uma clara tendência no sentido da sua adopção por praticamente todas as empresas que operam em ambientes competitivos - as instituições financeiras, por exemplo, estão a começar a potenciar este recurso.
Antes da popularização do Datawarehouse e das ferramentas ERP (”Enterprise Resource Planning”), uma verdadeira integração de dados era utópica - os sistemas trocavam dados de forma a que se atendesse às necessidades de cada um deles, sendo por isso chamados “sistemas integrados”, sem que essa integração sequer se aproximasse do que se vê hoje nos ERP. Cada aplicação tinha uma visão do que era um cliente, um produto ou uma operação; uma visão empresarial das informações disponíveis era praticamente ficção. Os dados históricos não existiam de forma organizada e os dados sintéticos disponíveis mostravam quase sempre apenas uma pequena parte da realidade da empresa.
Os ERP’s e o Datawarehouse podem suprir estas insuficiências, integrando dados, fornecendo dados históricos e permitindo a recuperação de informações de forma sintética ou analítica.
A integração dos dados permite a um gestor ter uma visão “organizacional” dos mesmos; essa integração, ou mais especificamente a migração dos dados mantidos pelos sistemas anteriores, no entanto, não é um processo fácil, nem barato - exige muitos recursos a nível de planeamento e diz-se que o seu custo é 75% do investimento necessário à implementação do Warehouse.
Existem algumas versões de Datawarehouse que merecem ser individualizadas pelas suas características especiais: uma delas é o “Operational Data Store” (ODS), que opera directamente ligado aos dados operacionais, com o objectivo de dar suporte a decisões de natureza operacional e com características que permitem a obtenção de tempos de resposta bastante rápidos, algo que um Datawarehouse clássico não consegue determinar.
Os Data Marts (DM) podem ser considerados Datawarehouses departamentalizados; genericamente são bastante semelhantes àqueles, porém com algumas características peculiares, como por exemplo menor volume de dados e padrão de uso bastante previsível, necessitando de uma tecnologia mais simples e barata face a esse menor volume, a esse padrão previsível e ao baixo detalhe de informação.
Durante algum tempo os Data Marts independentes foram muito populares, mas ao longo do tempo a sua arquitectura mostrou-se falível. Quando uma empresa construía alguns, constatava que não só crescia muito o volume de redundância de dados (quase sempre dados analíticos), como também o número de programas que faziam o interface entre essas estruturas e os sistemas legados; por outro lado também aumentavam os recursos de hardware envolvidos.
Já do ponto de vista da organização o problema maior talvez seja o de haver áreas a tomar decisões a partir de números diferentes, gerados em função da redundância - quer por erros, quer por diferentes graus de actualização ou critérios de tratamento de dados (o exemplo clássico, embora possa não ser o melhor para esse tema, é o arredondamento versus truncamento de valores).
Constatada essa realidade percebeu-se que os Data Marts independentes não eram a solução, evoluindo-se então para o conceito de Data Marts dependentes. Numa arquitectura desse tipo, há um “Warehouse” central que alimenta os Data Marts dependentes; é chamada também arquitectura “hub-and-spoke” (cubo-e-raio), onde os Data Marts são os raios e o Warehouse o cubo. Como vantagens dessa estrutura apresenta-se a integração de dados no cubo, a autonomia de processos e nenhuma redundância de dados nos raios.
Os padrões gerais de design de Base da Dados ditaram os caminhos de evolução e sofisticação do ambiente de Warehouse; nos seus primeiros tempos a normalização de dados clássica era a base para a estruturação; quando a arquitectura cubo-e-raio evoluiu o padrão passou a ser a normalização em “star join” para o cubo e “snowflake” para os raios.
Aspectos básicos de um Datawarehouse:
-
os dados são integrados à medida em que são armazenados. Isso implica a uniformidade e continuidade de conceitos da empresa: o que é um cliente, um produto, uma transacção e assim por diante. Dispondo-se do Warehouse pode-se partir imediatamente para análise, o que não aconteceria numa situação diferente em que os dados precisariam ser recolhidos, “limpos” (esse processo de limpeza é conhecido como “data scrubbing”) e a seguir reunidos para análise - esse processo, quase sempre completamente desestruturado, pode levar tanto tempo que, ao estar pronto, já terá sido superada a necessidade de análise (e talvez perdida uma oportunidade preciosa para a organização);
-
o Datawarehouse contém os dados analíticos e também os sintéticos. Estes podem ser úteis no início de um processo de análise, quando ainda está a ser planeado um estudo, especialmente por permitir poupar tempo nessa fase, ajudando a escolher o caminho correcto.
As ferramentas disponíveis para acesso à informação devem tornar-se mais poderosas, principalmente face aos imensos volumes de dados com que terão que se relacionar - isso é válido para gestores de Bases de Dados e outras ferramentas manipuladas pelo utilizador final - imaginemos um utilizador final a tentar executar um “query” que exija a criação de uma tabela temporária com o produto de duas tabelas de um milhão de linhas cada… (neste caso específico, há ferramentas que permitem evitar a degradação que um “query” como esse provocaria num sistema convencional).
Os grandes volumes também têm impacto na armazenagem de dados (financeira e tecnologicamente) em termos de discos magnéticos. Tem vindo assim a crescer o conceito de que o Datawarehouse não precisa de estar necessariamente “on-line”, algo como “near-line” ou quase em linha, talvez seja satisfatório e é possível que o “hardware” e “software” “near-line” surjam a curto-prazo.
Uma das técnicas utilizadas para minimizar esses problemas e optimizar o Datawarehouse é a regra conhecida como “80/20″ - pode-se afirmar que em qualquer Base de Dados de grandes dimensões, 80% da informação pode ser encontrada em 20% dos dados - assim, de acordo com a regra, a Base de Dados pode ser dividida e o volume a ser processado para análise diminui; se ainda assim o volume a ser analisado for muito grande, podem ser recolhidas amostras para análise, até que se tenha um conjunto viável e representativo.
Finalizando, cumpre reafirmar que este é um assunto que continua a evoluir e que apesar do relativo curto espaço de tempo decorrido desde que as ferramentas para Datawarehouse se tornaram populares, já são consideradas componentes essenciais da arquitectura das tecnologias de informação de todas as organizações.
Um projecto de Datawarehouse corre vários riscos na sua implementação, seja na operação, seja na aceitação. Um erro comum entre os agentes de Datawarehouse é prometer o valor das suas informações com argumentos de efeito como “isto vai ajudar os gerentes a tomar melhores decisões”. Quando um executivo ouve essas palavras a reacção natural é pensar: “este tipo imagina que nós temos tomado decisões erradas e que somente o seu sistema é que nos pode corrigir”. Quando isto acontecer os executivos tornar-se-ão muito difíceis de ser convencidos.