了解OLAP概念

        联机分析(OLAP)是由关系数据库之父E.F.Codd于1993年提出的一种数据动态分析模型,它容许以一种称为多维数据集的多维结构访问来自商业数据源的通过聚合和组织整理的数据。以此为标准,OLAP做为单独的一类产品同联机事务处理(OLTP)得以明显区分。html

        OLAP最基本的概念其实只有三个:多维观察、数据钻取、CUBE运算,除此之外,OLAP一般包括的功能包括数据旋转、数据切片,以及对数据进行跨行列运算。数据库

多维观察数组

        在平时工做中,会遇到各类问题,在分析问题的时候,一样的现象,咱们会从多个角度去分析考虑,而且有时候咱们还会从几个角度综合起来进行分析。这就是OLAP分析最基本的概念:从多个观察角度的灵活组合来观察数据,从而发现数据内在规律。https://zhuanlan.zhihu.com/p/38767561服务器

数据钻取性能

        在分析过程当中,咱们可能须要在现有数据基础上,将数据进一步细化,以得到更为精确的认识。这就是OLAP中数据钻取的概念。优化

CUBE运算spa

        一个OLAP模型中,度量数据和维数据咱们应该实现肯定,一旦二者肯定下来,那么咱们能够对数据进行预先的处理,在正式发布以前,将数据根据维进行最大限度的聚类运算,运算中会考虑到各类维组合状况,运算结果将生成一个数据CUBE,并保存在服务器上。这样,当最终用户在调阅这个分析模型的时候,就能够直接使用这个CUBE,在此基础上根据用户的维选择和维组合进行复运算,从而达到实时响应的这么一个效果。操作系统

        OLAP系统按照其存储器的数据存储格式能够分为关系OLAP(RelationalOLAP,简称ROLAP)、多维OLAP(MultidimensionalOLAP,简称MOLAP)和混合型OLAP(HybridOLAP,简称HOLAP)三种类型。.net

图片来自:https://zhuanlan.zhihu.com/p/38767561设计

ROLAP

        ROLAP将分析用的多维数据存储在关系数据库中并根据应用的须要有选择的定义一批实视图做为表也存储在关系数据库中。没必要要将每个SQL查询都做为实视图保存,只定义那些应用频率比较高、计算工做量比较大的查询做为实视图。

MOLAP

        MOLAP将OLAP分析所用到的多维数据物理上存储为多维数组的形式,造成“立方体”的结构。维的属性值被映射成多维数组的下标值或下标的范围,而总结数据做为多维数组的值存储在数组的单元中。

HOLAP

        因为MOLAP和ROLAP有着各自的优势和缺点(以下表所示),且它们的结构迥然不一样,这给分析人员设计OLAP结构提出了难题。为此一个新的OLAP结构——混合型OLAP(HOLAP)被提出,它能把MOLAP和ROLAP两种结构的优势结合起来。

这篇博客(图表来自)里面对不一样的类型差别列了一个表格

 

优点

缺点

ROLAP

没有大小限制
现有的关系数据库的技术能够沿用.
能够经过SQL实现详细数据与概要数据的存储
现有关系型数据库已经对OLAP作了不少优化,包括并行存储、并行查询、并行数据管理、基于成本的查询优化、位图索引、SQL 的OLAP扩展(cube,rollup)等大大提升ROALP的速度

通常比MDD响应速度慢
不支持有关预计算的读写操做
SQL没法完成部分计算
没法完成多行的计算
没法完成维之间的计算

MOLAP

性能好、响应速度快
专为OLAP所设计
支持高性能的决策支持计算
复杂的跨维计算
多用户的读写操做
行级的计算

增长系统复杂度,增长系统培训与维护费用
受操做系统平台中文件大小的限制,难以达到TB 级(只能10~20G)
须要进行预计算,可能致使数据爆炸
没法支持维的动态变化
缺少数据模型和数据访问的标准

HOLAP

基于混合数据组织的OLAP实现,如低层是关系型的,高层是多维矩阵型的。这种方式具备更好的灵活。holap结构不该该是molap与rolap结构的简单组合,而是这两种结构技术优势的有机结合,能知足用户各类复杂的分析请求。

迄今为止,对holap尚未一个正式的定义

 

参考:

http://www.javashuo.com/article/p-fsyjhcgh-be.html

http://www.raincent.com/content-10-7923-1.html

https://zhuanlan.zhihu.com/p/38767561

相关文章
相关标签/搜索