Sistemas de Apoio à Decisão: Arquiteturas OLAP – Parte I (Teoria)

Vocês sabem quais são as arquiteturas OLAP, quais as diferenças entre elas e como elas são cobradas em concursos? Então simbora comigo!

Fala, meus consagrados! Tudo beleza com vocês?

Vocês sabem quais são as arquiteturas OLAP, quais as diferenças entre elas e como elas são cobradas em concursos? Então simbora comigo!

Veremos os seguintes tópicos neste artigo:

  • Introdução e conceituação;
  • Cubo de dados;
  • Operações OLAP;
  • Arquiteturas OLAP;
  • MOLAP (Multidimensional On Line Analytical Processing);
  • ROLAP (Relational On Line Analytical Processing);
  • HOLAP (Hybrid On Line Analytical Processing);
  • DOLAP (Desktop On Line Analytical Processing);
  • Outras arquiteturas OLAP;
  • Síntese das arquiteturas em desempenho, escabilidade e custo;
  • Síntese das arquiteturas em termos-chave;
  • Mapa mental;
  • Referências.

Introdução e conceituação

OLAP significa On-Line Analytical Processing (Processamento Analítico On-Line). Trata da capacidade de analisar grandes volumes de informações nas mais diversas perspectivas dentro de um Data Warehouse (DW). É um conceito de interface com o usuário que proporciona a capacidade de ter idéias sobre os dados, permitindo analisá-los profundamente em diversos ângulos.

A aplicação OLAP  soluciona o problema de síntese,  análise e consolidação de dados, pois é o processamento analítico online dos dados. Tem capacidade de visualizações das informações a partir  de  muitas  perspectivas  diferentes,  enquanto  mantém  uma  estrutura  de  dados  adequada  e eficiente.

As funções básicas do OLAP são:

  • Visualização multidimensional dos dados;
  • Exploração;
  • Rotação;
  • Vários modos de visualização.

Como comparação com as aplicações OLTP (On-Line Transaction Processing, Processamento Transacional On-Line), temos a seguinte tabela:

Características

OLTP

OLAP

Operação típica

Atualização

Análise

Telas

Imutável

Definida pelo usuário

Nível de dados

Atomizado

Altamente sumarizado

Idade dos dados

Presente

Histórico, atual e projetado

Recuperação

Poucos registros

Muitos registros

Orientação

Registro

Arrays

Modelagem

Processo

Assunto

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).

Operações OLAP

  • Slice/Dice:
    • É uma das principais características de uma ferramenta OLAP;
    • É uma operação com responsabilidade de:
      • Recuperar o micro-cubo dentro do OLAP;
      • 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;
  • Pivot:
    • Rotation;
    • Visualiza dados por uma nova perspectiva;
  • Drill Across:
    • Ocorre quando o usuário pula um nível intermediário dentro de uma mesma dimensão;
    • O principal exemplo dessa característica é a com o uso na dimensão tempo, composta por ano, semestre, trimestre, mês e dia;
      • Usando essa operação, o usuário pode passar de ano direto para trimestre ou mês.
  • Drill Down:
    • Ocorre quando o usuário aumenta o nível de detalhe da informação;
      • Diminuindo a granularidade;
  • Roll Up:

    • Drill Up;
    • É o contrário do Drill Down: ocorre quando o usuário aumenta a granularidade;
      • Diminuindo o nível de detalhamento da informação;
  • Drill Throught:
    • Ocorre quando o usuário passa de uma informação contida em uma dimensão para uma outra;
    • Por exemplo:
      • Inicia na dimensão do tempo e no próximo passo analisa a informação por região.

Arquiteturas OLAP

Há várias arquiteturas OLAP, tais como:

  • MOLAP;
  • ROLAP;
  • HOLAP;
  • DOLAP;
  • FFOLAP;
  • WOLAP;
  • JOLAP; e
  • SOLAP.

Veremos as características, vantagens, desvantagens e termos-chave das seguintes da arquiteturas mais cobradas em concursos:

  • MOLAP;
  • ROLAP;
  • HOLAP; e
  • DOLAP.

Sobre as restantes, iremos ver a parte conceitual:

  • FFOLAP;
  • WOLAP;
  • JOLAP; e
  • SOLAP.

MOLAP (Multidimensional On Line Analytical Processing)

Características:

  • Arquitetura OLAP tradicional;
  • Os dados são armazenados em cubos dimensionais;
    • Em formatos proprietários;
    • Em um banco de dados multidimensional onde o servidor MOLAP atua;
  • Os dados não são armazenados em banco de dados relacionais; e
  • O usuário trabalha, monta e manipula os dados do cubo diretamente no servidor MOLAP.

Vantagens:

  • Alto desempenho:
    • Os cubos são construídos para uma rápida recuperação de dados; e
  • 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; e
  • 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; e
  • Investimentos altos.

ROLAP (Relational On Line Analytical Processing)

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; e
  • 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; e
  • 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) no banco de dados relacional e uma consulta pode ser consumir muito tempo se houver uma grande quantidade de dados; e
  • 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 (Hybrid On Line Analytical Processing)

Características:

  • 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; e
  • 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; e
  • Alta escalabilidade:
    • Os detalhes das informações são armazenados em um banco de dados relacional.

Desvantagem:

  • Arquitetura de o maior custo:
    • É modelo que possui o maior custo de aquisição.

Termos-chave:

  • Alto desempenho;
  • Alta escalabilidade; e
  • Arquitetura de o maior custo.

DOLAP (Desktop On Line Analytical Processing)

Característica:

  • A partir de um cliente qualquer, emite uma consulta para o servidor e recebe 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; e
  • 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; e
  • Limitação do cubo de dados.

Outras arquiteturas OLAP

FFOLAP:

  • Flat-filed OLAP;
  • É, em princípio, similar ao sistema do DOLAP;
    • Entretanto, um simples sistema de indexação de arquivo é usado para o suporte de dados;
  • Os sistemas FFOLAP são principalmente baseados em um sistema DOLAP que utiliza um sistema de indexação de arquivo ao invés de um SGBD.

WOLAP:

  • Web On Line Analytical Processing;
  • É a utilização de uma ferramenta OLAP a partir de um browser
  • Tem duas tecnologias que estão em constante evolução:
    • A primeira é a Web; e
    • A segunda são as ferramentas OLAP; e
  • A diferença desta ferramenta para as outras é que ela utiliza a Web;
    • Facilitando assim, a distribuição da ferramenta, o acesso remoto dos dados a serem analisados e a utilização da aplicação independente de plataforma.

JOLAP:

  • Java Online Analytical Processing;
  • É uma API java para OLAP;
  • É uma API (Interface de Programação de aplicações) Java para o ambiente Java EE;
  • Suporta a criação, armazenamento, acesso e gerenciamento de dados em uma aplicação OLAP;
  • Hyperion, IBM e Oracle iniciaram o desenvolvimento do JOLAP com a intenção de ser uma contraparte do Java Database Connectivity (JDBC) especificamente para OLAP; e
  • O programa Java Community Process 2.0 (JCP) supervisiona o processo de desenvolvimento JOLAP.

SOLAP:

  • Spacial Online Analytical Processing;
  • É a união de OLAP com sistema de informação geográfico;
  • Pode ser definido como uma plataforma visual construída especialmente para suportar de forma rápida e fácil, análises  de espaço-temporal e de exploração de dados na sequência de uma abordagem multidimensional composto de níveis de agregação disponíveis em monitores de cartográficas, bem como em displays tabulares e diagrama.

Síntese das arquiteturas em desempenho, escabilidade e custo

Síntese das arquiteturas em termos-chave

Arquitetura

Termo-chave

MOLAP

  • Armazenamento dos dados em cubos dimensionais e em formato proprietário;
  • Alto desempenho;
  • Execução de cálculos complexos;
  • Baixa escalabilidade; e
  • Investimentos altos.

ROLAP

  • Alta escalabilidade;
  • Pode alavancar as funcionalidades inerentes do banco de dados relacional;
  • Baixo desempenho;
  • Limitado pelas funcionalidades SQL.

HOLAP

  • Alto desempenho;
  • Alta escalabilidade; e
  • Arquitetura de o maior custo.

DOLAP

  • Pouco tráfego que na rede;
  • Sem sobrecarregar o servidor de banco de dados; e
  • Limitação do cubo de dados

Mapa mental

Referências

Na próxima parte, iremos tratar as questões sobre essa teoria. Então revisem que teremos ótimas questões para respondermos.

Espero que gostem e desejo que se preparem conosco durante essa jornada na conquista de uma tão sonhada vaguinha em um concurso público.

Então é isso!

[]’s e até a próxima!
_________________________
Professor Rogerão Araújo

Quer conquistar a sua aprovação em concursos públicos?
Prepare-se com quem mais entende do assunto!
Comece a estudar no Gran Cursos
Rogério Araújo
Rogério Araújo
Auditor Federal do STN, especialista em Governança em TI e professor de Desenvolvimento de Sistemas
Clique para comentar

Deixe seu comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Quer conquistar a sua aprovação em concursos públicos?
Prepare-se com quem mais entende do assunto!
Comece a estudar no Gran Cursos
Para o Topo