Data warehouse design methods consider the read-oriented
characteristic of warehouse data and enable the efficient query processing over
large amounts of data. A special type of relational database schemas, called
star schema, is often used to model the multiple dimensions of warehouse data
(in contrast to the two-dimensional representation of normal relational
schemas). In this case, the database consists of a central fact table and
several dimension tables. The fact table contains tuples that represent
business facts (measures) to be analyzed. Each fact table tuple references
multiple dimensional table tuples each one representing a dimension of
interest. Since dimension tables are not normalized, joining the fact table
with the dimension tables provides different dimensional views of the warehouse
data in an efficient way. A variant of the star schema, called the snowflake
schema, is commonly used to explicitly represent the dimensional hierarchies by
normalizing the dimension tables.
A more natural way to consider multidimensionality of
warehouse data is provided by the multidimensional data model. Thereby, the
data cube is the basic underlying modeling construct. Special operations like
pivoting (rotate the cube), slicing- dicing (select a subset of the cube),
roll-up and drill-down (increasing and decreasing the level of aggregation)
have been proposed in this context. For the implementation of multidimensional
databases, there are two main approaches:
In the first approach, extended relational DBMSs, called
relational OLAP (ROLAP) servers, use a relational database to implement the
multidimensional model and operations. ROLAP servers provide SQL extensions and
translate data cube operations to relational queries.
In the second approach, multidimensional OLAP (MOLAP)
servers store multidimensional data in non-relational specialized storage
structures. These systems usually pre-compute the results of complex operations
in order to increase performance.