Database Reference
In-Depth Information
￿ Relational OLAP ( ROLAP ), which stores data in relational databases
and supports extensions to SQL and special access methods to e ciently
implement the multidimensional data model and the related operations.
￿ Multidimensional OLAP ( MOLAP ), which stores data in specialized
multidimensional data structures (e.g., arrays) and implements the OLAP
operations over those data structures.
￿ Hybrid OLAP ( HOLAP ), which combines both approaches.
In ROLAP systems, multidimensional data are stored in relational tables.
Further, in order to increase performance, aggregates are also precomputed
in relational tables (we will study aggregate computation in Chap. 7 ). These
aggregates, together with indexing structures, take a large space from the
database. Moreover, since multidimensional data reside in relational tables,
OLAP operations must be performed on such tables, yielding usually complex
SQL statements. Finally, in ROLAP systems, all data management relies on
the underlying relational DBMS. This has several advantages since relational
databases are well standardized and provide a large storage capacity.
In MOLAP systems, data cubes are stored in multidimensional arrays,
combined with hashing and indexing techniques. Therefore, the OLAP
operations can be implemented e ciently, since such operations are very
natural and simple to perform. Data management in MOLAP is performed by
the multidimensional engine, which generally provides less storage capacity
than ROLAP systems. Normally, typical index structures (e.g., B-trees, or
R-trees) are used to index sparse dimensions (e.g., a product or a store
dimension), and dense dimensions (like the time dimension) are stored in
lists of multidimensional arrays. Each leaf node of the index tree points to
such arrays, providing e cient cube querying and storage, since the index in
general fits in main memory. Normally, MOLAP systems are used to query
data marts where the number of dimensions is relatively small (less than ten,
as a popular rule of thumb). For high-dimensionality data, ROLAP systems
are used. Finally, MOLAP systems are proprietary, which reduces portability.
While MOLAP systems offer less storage capacity than ROLAP systems,
they provide better performance when multidimensional data are queried
or aggregated. Thus, HOLAP systems benefit from the storage capacity of
ROLAP and the processing capabilities of MOLAP. For example, a HOLAP
server may store large volumes of detailed data in a relational database, while
aggregations are kept in a separate MOLAP store.
Current OLAP tools support a combination of the above models. Neverthe-
less, most of these tools rely on an underlying data warehouse implemented
on a relational database management system. For this reason, in what follows,
we study the relational OLAP implementation in detail.
Search WWH ::




Custom Search