MOLAP、HOLAP和ROLAP的区别

本文探讨了ROLAP、HOLAP及MOLAP三种OLAP技术的特点及应用场景,对比了它们在查询性能、空间占用及灵活性方面的优劣。并回顾了2000年至2003年间OLAP技术的发展趋势。

ROLAP(relational OLAP),细节数据、聚合后的数据都保存在关系型的数据库中。这种方式查询效率最低,但是如果数据量比较小的话,用这种方法未尝不可。
HOLAP(hybrid OLAP),细节数据保留在关系型数据库的事实表中,但是聚合后的数据保存在cube中。
MOLAP(multidimensional OLAP),将细节数据和聚合后的数据均保存在cube中,在查询性能上就有很大提高,问题就是会占用很大的空间,说白了,就是用空间换时间。

以上三种方式,具体情况具体利用.

记得2000年的时候,在QiDSS中使用的是ROLAP技术。到2003年,全国上下的BI系统几乎都采用MOLAP技术,这是一个很值得思考的现象。表面上看,由于工具厂商市场份额的变化,对产品推广力度不够。在QiDSS中,使用Metacube作为OLAP Server,但是就在那个时候,它已经宣称不再升级甚至不再提供支持了,当时业界提供纯ROLAP产品的厂商已经不多,现在Microstrategy公司依然存在,而且据说在国内有几个客户,很早了解他们就是因为它是ROLAP产品提供商,不过对它们现在的产品线已经不清楚了。

更深一层看,为什么ROLAP产品生存空间不大,必定和用户的需求有关系。用户需要的不是产品,而是在线分析的功能,其中重要的一点就是分析响应速度。
这一点还是MOLAP占了上风。从技术角度来说,ROLAP和MOLAP各有千秋。前者基于关系型数据库,它的OLAP引擎就是将用户的OLAP操作,如上钻下钻过滤等,转换成SQL语句提交到数据库中执行,并且提供聚集导航功能,根据用户操作的维度和度量将SQL查询定位到最粗粒度的事实表上去。相比较而言,MOLAP事先将汇总数据计算好,存放在自己特定的多维数据库中,用户的OLAP操作可以直接映射到多维数据库的访问,无需通过SQL访问。可以说ROLAP提供了更大的灵活度,但可能正是这种灵活度,造成对用户使用的不友好印象,确实相比Metacube和Cognos,前者的操作复杂多了,不过这应该不成问题,是可以改善的。

性能的问题却不是非常容易解决的,关键还不在是聚集表快还是多维数据库快。从体系架构上说,采用MOLAP使得OLAP应用和数据仓库分离开,降低了耦合度,这种架构是比较理想的,可以让不同部件专门干自己的事,付出的代价主要是ETL的复杂度。而ROLAP技术直接依赖数据仓库,与之紧密结合,OLAP的性能很大程度上依赖数据仓库模式设计,这一点不是总是被保证的。

不过对于ROLAP,我对之有些信心。别看现在大家都在用Cognos、Essbase什么的,那都是轧堆,十年河东,十年河西。如果在ROLAP上有成熟的方法论用以规范化数据仓库设计的话,以后必定又能大放异彩。

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值