OLAP和OLTP的区别?

0
已邀请:
3

andrea_zhou - 咨询顾问、BA 2013-06-28 回答

首先,定义给出,OLTP(on-line transaction process)联机事务处理,OLAP(on-line analytic process)联机分析处理。前者用于业务处理,强调系统的快速、稳定、以及一致性。后者用于企业分析处理,强调业务的表达以及分析交互性,后者的数据通常来源与前者。
他们的产生要追溯到蛮久之前了,最开始阶段,约莫60年代时,是只有OLTP的,发展到了90年代,93年的时候,跟现在很多企业以及能认识到的一样,关系数据库之父E.F.CODE认为OLTP已满足不了企业的数据查询分析统计等需求,提出了多维数据库多维分析的概念,他发表了OLAP的12项准则,由此OLAP的概念便慢慢被行业接受开来。
对应到我们现在的BI项目里,OLTP系统通常会指的是我们的各个业务系统,用户在其中每天进行着重复的操作,单据录入,档案维护,使得企业业务运营正常展开,OLAP系统可指我们的多维数据库,亦可以意指我们的BI系统,具体情况下会有不同意思。强调的是用于分析的系统,用于监控企业运用,发现问题,分析问题。
OLAP又可分为MOLAP、ROLAP、HOLAP,MOLAP存定义存聚合数,ROLAP通常存定义不存聚合(有时也有聚合表),HOLAP介于上述两者之间。
大概10年前的时候,MOLAP是很流行的,大部分项目中都要配置OLAP数据库,即多维数据库,那些年将BI的技术定义为三大块:数据仓库、OLAP、数据挖掘,也是这个情况了。十年河东十年河西,果然,现在很多企业都放弃了MOLAP,转向ROLAP产品了,这一状况,也与现在硬件的升级,内存等资源的性价比更合理有关。现在的主流产品,BIEE、BO、COGNOS的FM,都是类ROLAP的,微软SSAS、ORACEL收购的HYPERION的ESSBASE(不知还有无,以前真的很火),COGNOS TR,SAP BW等,都以MOLAP为基础的。至于现在新出现的Qlikview,设计为在内存中进行关联组合查询,就有点不太好归类了。

要回复问题请先登录注册