OLAP处理的对象是大量历史数据,以汇总的、多维的数据作为其视图,访问模式是大量的复杂查询。
OLAP是在数据仓库基础上进行的多维查询分析,根据数据组织方式不同可以分为ROLAP和MOLAP。 其中,MOLAP通过基于数组的多维存储引擎,支持数据的多维视图,具有快速的查询性能,而这主要得益于它独特的、以数据立方体形式存储的多维数据结构,以及存储在数据立方体中的预处理程度很高的数据(即聚集数据)。
ROLAP系统是以表格的形式存储多维数据,关系表中的元组表示逻辑上多维空间中的一个单元,这一单元在多维空间中的位置用元组中的某些属性值来表示,而单元中存储的数据则由元组的另一些属性来表示。MOLAP通过基于数组的多维存储引擎,支持数据的多维视图。它们将多维视图直接映射到数据立方体数组结构。 数据在多维空间中的位置由维属性来确定和计算,数据的值即为度量属性的值。
从技术角度来说,ROLAP基于关系型数据库,它的OLAP引擎就是将用户的OLAP操作如上卷、下钻、切片等,转换成SQL语句提交到数据库中执行,并且提供聚集导航功能,根据用户操作的维度和度量将SQL查询定位到最粗粒度的事实表上去。相比较而言,MOLAP事先将汇总数据计算好,存放在自己特定的多维数据库中,用户的OLAP操作可以直接映射到多维数据库的访问,无需通过SQL访问。所以通常情况下MOLAP查询的速度要快一些。