Fala, galera!

Mostrarei aqui uma visão geral sobre arquiteturas OLAP. Neste post, veremos os seguintes itens:

  • Conceitos iniciais que servirão para entender alguns pontos das arquiteturas;
  • MOLAP;
  • ROLAP;
  • HOLAP;
  • DOLAP;
  • Síntese das arquiteturas em Desempenho, Escabilidade e Custo;
  • Síntese das arquiteturas em Termos-chave;
  • Mapa mental;
  • Algumas questões relacionadas;
  • Referências.

Vambora, cambada!😀

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

SI01_ArquiteturasOLAP_01

Síntese das arquiteturas em Termos-chave

SI01_ArquiteturasOLAP_02

Mapa mentalMapa mental

Algumas questões relacionadas

CESPE 2004 SERPRO Cargo 2
96 Na arquitetura multidimensional OLAP (MOLAP), o módulo de software OLAP, que pode encontrar-se em um servidor OLAP próprio, gerencia as consultas provenientes do cliente decompondo cada consulta em diversas subconsultas que são entregues a um banco de dados relacional, de modo que, recebendo as diversas respostas, o servidor OLAP apresenta ao cliente uma visão multidimensional da informação.

Gabarito: ERRADO

Justificativa: O conceito da questão define ao método de armazenamento DOLAP, onde um cliente envia uma consulta para o servidor e recebe o cubo de informações de volta para ser analisado na estação cliente. Já no método MOLAP, o usuário trabalha, monta e manipula os dados do cubo diretamente no servidor.

CESPE 2006 DATAPREV Perfil V

89 Um datawarehouse exige grande capacidade de armazenamento e processamento dos dados, pois armazena dados analíticos, destinados às necessidades de tomada de decisão. Esses dados podem ser armazenados em banco de dados relacional ou MOLAP (multidimensional-array OLAP). Na estrutura MOLAP, devem-se criar vários índices atrelados às tabelas de fatos e dimensões para um acesso mais rápido e eficiente ao banco de dados.

Gabarito: ERRADO

Justificativa: No caso, a arquitetura correta seria ROLAP, pois a questão citou “Esses dados podem ser armazenados em banco de dados relacional…”.

CESPE 2007 PETROBRÁS Cargo 5

147 Soluções MOLAP possuem maior escalabilidade que ROLAP.

Gabarito: ERRADO

Justificativa: É o ROLAP que possui maior escalabilidade do que o MOLAP.

CESPE 2007 PETROBRÁS Cargo 7

134 Soluções MOLAP promovem maior independência de fornecedores de SGBDs que soluções

ROLAP.

Gabarito: ERRADO

Justificativa: No MOLAP há alto um alto investimento em cubo de tecnologia proprietária, então ao se usar essa arquitetura, existirá uma dependência maior de fornecedores. Quanto ao ROLAP, não teremos esse problema pois podemos usar qualquer bancos de dados.

Referências

[1] Proposta de uma ferramenta OLAP em um Data Mart comercial: Uma aplicação prática na indústria calçadista: http://nead.feevale.br/tc/files/450.pdf

[2] What is OLAP, MOLAP, ROLAP, DOLAP, HOLAP? Examples?: http://www.geekinterview.com/question_details/271

[3] MOLAP, ROLAP, And HOLAP: http://www.1keydata.com/datawarehousing/molap-rolap.html

[4] Evolução do OLAP: http://sisnema.com.br/Materias/idmat014848.htm

[5] Architectures, Concepts and Operators: http://fedc.wiwi.hu-berlin.de/xplore/ebooks/html/csa/node72.html

E agora, uma palavra de nosso patrocinador!

.

.

.

.

.

.

Ronaldo!

Ronaldo!

[]s e até a próxima!

_________________________
Rogério Araújo
Blog: https://rogerioaraujo.wordpress.com/
Gmail: rgildoaraujo@gmail.com