OLTP和OLAP的关系

OLTP和OLAP的关系

联机事务处理

概念

OLTP(on-line transaction processing)主要是执行基本日常的事务处理,比如数据库中得增删改。

特点

  1. 实时性要求高。(分分钟到账)

  2. 数据量不是很大,生产库上的数据量一般不会太大,而且会及时做出相应的数据处理与转移。

  3. 对确定性的数据进行存取

  4. 高并发,并且满足ACID原则。(两人同时操作一张银行卡账户、大型的购物网站秒杀活动)

联机分析处理

概念

OLAP(On-Line Analytical Processing)是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。典型的应用就是复杂的动态的报表系统。

特点

  1. 实时性要求不高,比如最常见的应用就是天级更新数据,然后出对应的数据报表。

  2. 数据量大。因为支持动态查询

  3. 通过数据提供决策支持。

总结

OLTP即联机事务处理: 就是我们经常说的关系数据库,增删查改就是我们经常应用的东西,这是数据库的基础;TPCC(Transaction Processing Performance Council)属于此类。

OLAP即联机分析处理: 是数据仓库的核心部心,所谓数据仓库是对于大量已经由OLTP形成的数据的一种分析型的数据库,用于处理商业智能、决策支持等重要的决策信息;数据仓库是在数据库应用到一定程序之后而对历史数据的加工与分析,读取较多,更新较少,TPCH属于此类。

随着大数据时代的到来,对于OLAP,列存储模式或者说nosql模式比传统意义的行存储模式可能更具优势。

ACID说明

数据库事务正确执行的四个基本要素得缩写。原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。

原子性(Atomicity)

要么完成要么不完成、执行过程中实现回滚。

一致性(Consistency)

一个事务可以封装状态改变(除非它是一个只读的)。事务必须始终保持系统处于一致的状态,不管在任何给定的时间并发事务有多少。

隔离性(Isolation)

隔离状态执行事务,使它们好像是系统在给定时间内执行的唯一操作。如果有两个事务,运行在相同的时间内,执行相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在使用系统。这种属性有时称为串行化,为了防止事务操作间的混淆,必须串行化或序列化请求,使得在同一时间仅有一个请求用于同一数据。

持久性(Durability)

在事务完成以后,该事务对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。