• ↑↓ pour naviguer
  • pour ouvrir
  • pour sélectionner
  • ⌘ ⌥ ↵ pour ouvrir dans un panneau
  • ←→ pour naviguer
  • esc pour rejeter
⌘ '
raccourcis clavier

The Problem

ROLAP handles large data volumes but has slow query response times. MOLAP has fast response times but cannot store detailed data and has limited scalability. Neither solution alone satisfies organizations that need both fast access to aggregated data and the ability to drill down into massive detailed datasets.

Core Idea

HOLAP (Hybrid OLAP) combines the higher scalability of ROLAP with the faster computation of MOLAP. It stores large volumes of detailed information in relational tables (ROLAP) while storing frequently accessed aggregations separately in a MOLAP store. This provides fast responses for summary queries while retaining the ability to access full detail when needed.

How It Works

HOLAP divides data storage and processing based on usage patterns:

  1. Detailed data → ROLAP storage:

    • The full granular data (individual transactions, daily records) is stored in relational tables.
    • This provides unlimited scalability — the ROLAP layer can handle terabytes of detailed data.
    • Queries requiring row-level detail are directed to this layer.
  2. Aggregations → MOLAP storage:

    • Pre-computed summary data (monthly totals, regional summaries, category-level aggregates) is stored in multidimensional cubes.
    • This provides instant response for common analytical queries.
    • Queries for summaries hit the MOLAP layer directly.
  3. Query routing:

    • When a user queries the HOLAP server, it determines whether the requested data is available in the MOLAP aggregation layer.
    • If yes: returns the pre-computed result instantly.
    • If no: generates a SQL query against the ROLAP detailed layer.
  4. Best of both worlds:

    • Summary queries: fast (MOLAP)
    • Detail queries: possible (ROLAP)
    • Storage: efficient (only aggregations pre-computed)

Visual Explanation

holap_server cluster_storage Dual Storage user User Query engine HOLAP Engine Routes Query Based on Request Type user->engine molap_store MOLAP Store Aggregations (Fast Response) engine->molap_store summary queries rolap_store ROLAP Store Detailed Data (Scalable) engine->rolap_store detail queries

Semantic Network

semantic_holap THIS HOLAP Server OLAP_SRV OLAP Servers THIS--OLAP_SRV built from ROLAP ROLAP Server THIS--ROLAP built from MOLAP MOLAP Server THIS--MOLAP built from CUBE Multidimensional Data Model THIS--CUBE builds into OLAP_OPS OLAP Operations THIS--OLAP_OPS builds into

Key Properties

  • Hybrid storage: ROLAP for detail, MOLAP for aggregations
  • Query routing: Engine directs queries to the appropriate storage layer
  • Scalability: Handles large data volumes via ROLAP layer
  • Speed: Pre-computed aggregations provide fast summary responses
  • Configuration dependent: Administrators must decide which aggregations go to MOLAP

Connections

Edge Cases & Gotchas

  • Configuration complexity: Administrators must carefully choose which aggregations to pre-compute — wrong choices waste storage or provide no performance benefit.
  • Stale aggregations: When detailed data is refreshed, MOLAP aggregations must be re-computed, adding refresh latency.
  • Not a panacea: HOLAP inherits weaknesses from both ROLAP (slow detail queries) and MOLAP (storage overhead for aggregations).