ROLAP, MOLAP, HOLAP for beginners

Why do you want an OLAP in your company in the first place? I mean you already have a relational databases with years and years of data in it. If your company (SMB) just needs a simple data reporting and query. (Stop reading here, OLAP is not for you.) You may want to read more about OLAP if your company needs a technology beyond query and reporting.

What is OLAP?
OLAP represents data using a multidimensional model (think rubik's cube) rather than the traditional tabular data model. Tabular data model treats data as a single occurrence in time (sort of a list of transactions). Multidimensional data model (rubric’s) treats data as a cumulative series of occurrences (days, weeks, months, years). This means that this data model allows you to pivot the data, just as you would in a real world rubik's cube. By turning it into different angles you are in turn looking at your data in different perspective. OLAP also allows interactive querying. In our example of the rubik's cube, let's say you’re interested in the color red; you can twist the cube to arrive at more colors of red. If you’re interested in your yearly sales reports, you can drill down and look for sales report in monthly basis, or change into reports monthly and departmentalized at the same time. It may not even surprise you that data model implementations in OLAP are called "cubes".

What are the types of OLAP?
OLAP tools do not indicate how the data is actually stored. Given that, it’s not surprising that there are multiple ways to store the data. In the world of OLAP, there are mainly two different types - Multidimensional OLAP (MOLAP) and Relational OLAP (ROLAP). Hybrid OLAP (HOLAP) is a combination of the two.

MOLAP - data is stored in a multidimensional database (most of them are proprietary). This is the more traditional approach to OLAP analysis.
Pros: fast data retrieval, fast and complex calculations (bec. computations are done during the creation of the cube.)
Cons: handles limited amount of data, cube size are computed exponentially, potential investment in manpower to maintain the proprietary multidimensional database.

ROLAP - sits on top of previous relational databases and inherits most of its limitations and functionalities.
Pros: faster load times, standard SQL accessibility, better support for textual descriptions, and more flexible data modeling, can handle large amounts of data
Cons: slower query performance and more demanding processing and system memory requirements, limited by the calculations done using SQL

HOLAP - marriage somewhere between ROLAP and MOLAP, thus the term Hyprid OLAP.

It tries to get the best of both worlds. It uses cube for summary type information to provide a faster performance. And when drill through is needed, its links itself with an underlying relational data.

At a glance, here are the information about OLAP:
OLAP – Online analytical Processes
MOLAP – Multidimensional Online analytical Processes (Cubes)
ROLAP – Relational Online analytical Processes (RDBMS)
HOLAP – Combination of MOLAP & ROLAP
DOLAP – Desktop Online analytical Processes (Cubes are stored in desktop as well)

If we were to compare the three main types of OLAP, we will arrive at the following conclusion:

The type of storage medium impacts on cube processing time, cube storage and cube browsing speed. Some of the factors that affect MOLAP storage are:

Cube browsing is the fastest when using MOLAP. This is so even in cases where no aggregations have been done. The data is stored in a compressed multidimensional format and can be accessed quickly than in the relational database. Browsing is very slow in ROLAP about the same in HOLAP. Processing time is slower in ROLAP, especially at higher levels of aggregation.

MOLAP storage takes up more space than HOLAP as data is copied and at very low levels of aggregation it takes up more room than ROLAP. ROLAP takes almost no storage space as data is not duplicated. However ROLAP aggregations take up more space than MOLAP or HOLAP aggregations.

All data is stored in the cube in MOLAP and data can be viewed even when the original data source is not available. In ROLAP data cannot be viewed unless connected to the data source.

MOLAP can handle very limited data only as all data is stored in the cube.

For additional reading on evaluating the technical advantages and disadvantages of MOLAP versus ROLAP, I suggest visiting this website:

Gilbert on Thursday, April 20, 2006


Post a Comment

<< Back to Home