Vejam abaixo os conceitos e a demonstração comparativas das arquiteturas OLAP quanto a desempenho, escalabilidade, investimentos e outros detalhes importantes.
Conceitos iniciais
Cubo de dados é uma estrutura multidimensional que expressa a forma na qual os tipos de informações se relacionam entre si. É formado pela tabela de fatos e pelas tabelas de dimensão que a circundam e representam possíveis formas de visualizar e consultar os dados. O cubo armazena todas as informações relacionadas a um determinado assunto, de maneira a permitir que sejam montadas várias combinações entre elas, resultando na extração de várias visões sobre o mesmo tema (HOKAMA et al. 2004, p. 49).
O Slice/Dice é uma das principais características de uma ferramenta OLAP. É uma operação com responsabilidade de recuperar o micro-cubo dentro do OLAP, além de servir para modificar a posição de uma informação, alterar linhas por colunas de maneira a facilitar a compreensão dos usuários e girar o cubo sempre que tiver necessidade.
MOLAP
Características:
- Arquitetura OLAP tradicional;
- Os dados são armazenados em cubos dimensionais, em formatos proprietários, e não em banco de dados relacionais;
- O usuário trabalha, monta e manipula os dados do cubo diretamente no servidor.
Vantagens:
- Alto desempenho: os cubos são construídos para uma rápida recuperação de dados;
- Pode executar cálculos complexos: todos os cálculos são pré-gerados quando o cubo é criado e podem ser facilmente aplicados no momento da pesquisa de dados.
Desvantagens:
- Baixa escalabilidade: sua vantagem de conseguir alto desempenho com a pré-geração de todos os cálculos no momento da criação dos cubos, faz com que o MOLAP seja limitado a uma pouca quantidade de dados. Esta deficiência pode ser contornada pela inclusão apenas do resumo dos cálculos quando se construir o cubo;
- Investimentos altos: este modelo exige enormes investimentos adicionais como cubo de tecnologia proprietária.
Termos-chave:
- Armazenamento dos dados em cubos dimensionais e em formato proprietário;
- Alto desempenho;
- Execução de cálculos complexos;
- Baixa escalabilidade;
- Investimentos altos.
ROLAP
Características:
- Os dados são armazenados em banco de dados relacionais;
- A manipulação dos dados armazenados no banco de dados relacional é feita para dar a aparência de operação Slice/Dice tradicional;
- Na essência, cada ação de Slice/Dice é equivalente a adicionar uma cláusula WHERE em uma declaração SQL.
Vantagens:
- Alta escalabilidade: usando a arquitetura ROLAP, não há nenhuma restrição na limitação da quantidade dados a serem analisados, cabendo essa limitação sendo do próprio banco de dados relacional utilizado;
- Pode alavancar as funcionalidades inerentes do banco de dados relacional: Muitos bancos de dados relacionais já vêm com uma série de funcionalidades e a arquitetura ROLAP pode alavancar estas funcionalidades.
Desvantagens:
- Baixo desempenho: cada relatório ROLAP é basicamente uma consulta SQL (ou várias consultas SQL) na banco de dados relacional e uma consulta pode ser consumir muito tempo se houver uma grande quantidade de dados;
- Limitado pelas funcionalidades SQL: ROLAP se baseia principalmente na geração instruções SQL para consultar a base de dados relacional, porém essas instruções não suprem todas as necessidades (por exemplo, é difícil de realizar cálculos complexos utilizando SQL). Portanto, usar ROLAP é se limitar ao que instruções SQL podem fazer.
Termos-chave:
- Alta escalabilidade;
- Pode alavancar as funcionalidades inerentes do banco de dados relacional;
- Baixo desempenho;
- Limitado pelas funcionalidades SQL.
HOLAP
Características:
- HOLAP tenta combinar as vantagens de MOLAP e ROLAP, extraindo o que há de melhor de cada uma, ou seja, a alta performance do MOLAP com a melhor escalabilidade do ROLAP;
- Para informações do tipo síntese, HOLAP utiliza cubos dimensionais para um desempenho mais rápido;
- Quando for necessário mais detalhe de uma informação, HOLAP pode ir além do cubo multidimensional para o banco de dados relacional utilizado no armazenamento dos detalhes.
Vantagens:
- Alto desempenho: os cubos dimensionais apenas armazenam síntese das informações;
- Alta escalabilidade: os detalhes das informações são armazenados em um banco de dados relacional.
Desvantagens:
- Arquitetura de o maior custo: é modelo que possui o maior custo de aquisição.
Termos-chave:
- Alto desempenho;
- Alta escalabilidade;
- Arquitetura de o maior custo.
DOLAP
Característica:
- São as ferramentas que, a partir de um cliente qualquer, emitem uma consulta para o servidor e recebem o cubo de informações de volta para ser analisado na estação cliente.
Vantagens:
- Pouco tráfego que na rede: todo o processamento OLAP acontece na máquina cliente;
- Sem sobrecarregar o servidor de banco de dados: como todo o processamento acontece na máquina cliente, o servidor fica menos sobrecarregado.
Desvantagem:
- Limitação do cubo de dados: o tamanho do cubo de dados não pode ser muito grande, caso contrário, a análise passa a ser demorada e/ou a máquina do cliente pode não suportar em função de sua configuração.
Termos-chave:
- Pouco tráfego que na rede;
- Sem sobrecarregar o servidor de banco de dados;
- Limitação do cubo de dados.
Síntese das arquiteturas em Desempenho, Escabilidade e Custo
Síntese das arquiteturas em Termos-chave
Mapa Mental
Autor: Rogério Araújo