码迷,mamicode.com
首页 > 其他好文 > 详细

Olap Stroage

时间:2015-07-03 20:36:19      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:

1,Olap存储的数据

OLAP存储的数据包括两类,一类是叶级值,即细节性的数据,包括维度表和事实表中的所有数据;一类是聚合值,是叶级值经过聚合函数聚合之后产生的聚合数据。

2,Olap存储模式

那么Olap是如何存储叶级值和聚合值的?Olap主要使用两种存储结构,一种是使用关系型DB来存储,一种是使用cube来存储。

关系型DB存储是指把叶级值和聚合值都存储在关系型的DB中,缺点是查询效率低,优点是能存储大量的数据。

cube存储是指把叶级值和聚合值都存储在cube中,cube是一种数据结构,这种结构跟关系型结构不同,能够很快的做切片,旋转等聚合操作,便于进行数据的查询,但是不能存储海量数据。Cube存储的优点是查询性能高,缺点是不能存储大量的数据。

这两种存储是不可调和的矛盾体,面对这类问题,肯定会有一种“中庸”的处理方式,来平衡性能和存储。

Olap的存储模式有三种,分别是ROlap,HOlap和MOlap

      ROLAP是基于关系数据库的OLAP实现(Relational OLAP)以关系型结构进行多维数据的表示和存储,将Olap数据存储在关系型DB中。特点是将细节数据存储在关系型数据库的事实表和维度表中,将聚合数据保存在关系型的数据库中。这种方式查询效率低,存储的数据量大。

      MOLAP是基于多维存储结构的OLAP实现(Multidimensional OLAP)使用cube结构存储数据,特点是将细节数据和聚合数据均保存在cube中,所以以空间换效率,查询时效率高,但生成cube时需要大量的时间和空间。

      HOLAP是混合型OLAP实现(Hybrid OLAP)是将细节数据保留在关系型数据库的事实表和维度表中,聚合数据保存在cube中,聚合时需要比ROLAP更多的时间,查询效率比ROLAP高,但低于MOLAP。

3,主动缓存

AS需要响应的数据可以存储在缓存中,提高查询的速度,但是当存储在源关系db中的数据发生变化时,就会产生cube数据和源数据不同步的问题。一旦源关系DB的数据发生改变,Olap如何以最快的速度感知到这种变化,并将数据同步到AS的cube中?答案是proactive caching,利用Proactive Caching能够简化数据同步的问题。

 

Olap Stroage

标签:

原文地址:http://www.cnblogs.com/ljhdo/p/4616851.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!