ROLAP tables used in
SAS OLAP cubes can be SAS data sets, SAS data views, or any tables
or views accessible through a SAS engine. This extends the choice
of available storage options for SAS OLAP cubes to include SPDE, SPDS,
and any RDBMS product for which a
SAS/ACCESS software product is available.
ROLAP aggregation tables
must conform to the structure of the input data. The columns that
feed the dimension levels must have the same column names and attributes
that were used in the input data when loading the cube. In addition,
all aggregations must be stored in fully de-normalized form. Here
are some guidelines to make aggregation columns for measures available:
-
Each ROLAP aggregation table must
include all columns for the cube's measures with stored statistics.
-
SAS OLAP cube aggregations store
the following statistics: SUM, N, NMISS, USS, MIN, and MAX. Other
available statistics are derived from the stored statistics by internal
calculations. For example, in order to include a measure for the AVG
statistic in your cube, you need to make columns available in your
ROLAP aggregation tables that were generated by using SUM and N (count).
ROLAP data is stored
in either a flat file or with a star schema. With ROLAP, each instance
of slicing and dicing of data is part of an SQL query (or multiple
SQL queries) and is comparable to a WHERE clause in the SQL statement.
ROLAP data requests
can also run against the data that was used to create and load the
cube, whether from a detail table or a star schema. The cube's input
data can be used in place of the aggregation with the combination
of the lowest level of all dimensions (often called NWAY or NWAY aggregation,
which is a name borrowed from PROC MEANS/PROC SUMMARY where it denotes
the combination of all CLASS variables).