[经验] OLTP与OLAP的区别精简总结

白丁   2016-4-7 20:43 楼主
转自http://www.itpub.net/thread-1777924-1-1.html
************************************************
1、当今的数据处理大致可以分成两大类:
联机事务处理On-Line Transaction Processing
联机分析处理On-Line Analytical Processing
2、二者特性的不同,决定了对资源需求的偏重
************************************************

01-1 OLTP(实时交易库大量短事务IO要求高)

一、面向交易的实时处理系统OLTP
OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,记录即时的增、删、改、查,比如在银行存取一笔款,就是一个事务交易。
也称为实时系统(Real time System)。衡量联机事务处理系统的一个重要性能指标是系统性能,具体体现为实时响应时间(Response Time),即用户在终端上送入数据之后,到计算机对这个请求给出答复所需要的时间。
二、OLTP特点
1、实时性要求高;
OLTP 数据库旨在使事务应用程序仅写入所需的数据,以便尽快处理单个事务。
2、数据量不是很大;
3、交易一般是确定的,所以OLTP是对确定性的数据进行存取(比如存取款都有一个特定的金额)
4、支持大量并发用户定期添加和修改数据。
并发性要求高并且严格的要求事务的完整、安全性 (比如这种情况:有可能你和你的家人同时在不同银行取同一个帐号的款)
************************************************

01-2 OLAP数据仓库读取分析CPU要求高)

所谓数据仓库是对于大量已经由OLTP形成的历史数据加工与分析,读取较多,更新较少的一种分析型的数据库,用于处理商业智能、决策支持等重要的决策信息。

一、OLAP简介
OLAP即联机分析处理,是数据仓库的核心部心,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。典型的应用就是复杂的动态报表系统。
有兴趣的朋友不妨到科研、教育、文化和卫生系统去看一看,他们那里一般都有一个叫做SPSS(世界上最早的统计分析软件)的统计分析软件,其菜单上有一个“分析”项目,其下拉的第一个项目就是OLAP
二、OLAP的特点一般有:
1、实时性要求不是很高,很多应用顶多是每天更新一下数据;
2、数据量大,因为OLAP支持的是动态查询,所以用户也许要通过将很多数据的统计后才能得到想要知道的信息,例如时间序列分析等等,所以处理的数据量很大;
3、因为重点在于决策支持,所以查询一般是动态的,也就是说允许用户随时提出查询的要求。于是在OLAP中通过一个重要概念“维”来搭建一个动态查询的平台(或技术),供用户自己去决定需要知道什么信息。
三、主要OLAP厂商产品介绍
1Hyperion(已被Oracle收购)EssbaseOLAPServer
2Cognos(已被Oracle收购) PowerPlay为商务效率评价BPMBusinessPerformanceMeasurement)提供全面的报告和分析环境。向决策者提供企业运行效率的各种关键数据,进行各种各样的分析。
3BusinessObjects是易用的BI工具,允许用户存取、分析和共享数据。
************************************************

01-3 OLTPOLAP总结
一、OLTP与OLAP之间的比较

OLTP
OLAP
用户
操作人员,低层管理人员
决策人员,高级管理人员
功能
日常操作处理
分析决策
DB 设计
面向应用
面向主题
数据
当前的, 最新的细节的, 二维的分立的
历史的, 聚集的, 多维的
集成的, 统一的
存取
/写数十条记录
读上百万条记录
工作单位
简单的事务
复杂的查询
用户数
上千个
上百个
DB 大小
100MB-GB
100GB-TB
二、特性的不同决定了对资源需求的偏重
OLTPOLAP的不同,主要通过以下五点区分开来。
1、用户和系统的面向性:

  • OLTP是面向顾客的,用于事务和查询处理
  • OLAP是面向市场的,用于数据分析

2、数据内容:
  • OLTP系统管理当前数据
  • OLAP系统管理大量历史数据,提供汇总和聚集机制

3、访问模式:
  • OLTP系统的访问主要由短的原子事务组成,这种系统需要并行和回滚恢复机制
  • OLAP系统的访问大部分是只读操作

4、视图:
  • OLTP组织内部的当前数据,不涉及历史数据或不同组织的数据
  • OLAP则相反.

5、数据库设计:
  • OLTP采用实体-联系ER模型和面向应用的数据库设计.
  • OLAP采用星型或雪花模型和面向主题的数据库设计.


training

回复评论 (5)

FPGA的版主,对数据库也很有研究,?!?!
先膜拜下啊。
MicroPython中文社区https://micropython.org.cn/forum/  
点赞  2016-5-7 23:07
引用: 5525 发表于 2016-5-7 23:07
FPGA的版主,对数据库也很有研究,?!?!
先膜拜下啊。

没有研究,只是看那么一点点
training
点赞  2016-5-8 08:01
引用: 白丁 发表于 2016-5-8 08:01
没有研究,只是看那么一点点

初到宝地,最近一直在寻宝,每天都感觉收获很多,感想很多,感谢各位网友和eeworld平台。
MicroPython中文社区https://micropython.org.cn/forum/  
点赞  2016-5-8 09:04
引用: 5525 发表于 2016-5-8 09:04
初到宝地,最近一直在寻宝,每天都感觉收获很多,感想很多,感谢各位网友和eeworld平台。

欢迎欢迎,是不是做电子的老司机啊?
training
点赞  2016-5-8 09:12
引用: 白丁 发表于 2016-5-8 09:12
欢迎欢迎,是不是做电子的老司机啊?

版主过奖了,接手的项目好好搞是应该的。
不过贵宝和网友的信息面还是很广的,天天翻估计都翻不完。
MicroPython中文社区https://micropython.org.cn/forum/  
点赞  2016-5-8 09:36
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复