mysql -- SQL OLTP与OLAP 的区别
SQL OLTP与OLAP 的区别
数据处理大致可以分成两大类:
联机事务处理OLTP(on-line transaction processing)
联机分析处理OLAP(On-Line Analytical Processing)
OLAP是联机分析处理 主要是查询处理
OLTP是联机事务处理 主要是事务处理 即插入 修改 查询和删除操作
OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。
OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
OLTP 系统强调数据库内存效率,强调内存各种指标的命中率,强调绑定变量,强调并发操作;
OLAP 系统则强调数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。
OLTP与OLAP 的主要区别有以下几点:
(1)、所面向的用户和系统:OLTP是面向客户的,由职员或客户进行事务处理或者查询处理。OLAp是面向市场的,由经理、主管和分析人员进行数据分析和决策的。
(2)、数据内容:OLTP系统管理当前数据,这些数据通常很琐碎,难以用于决策。OLAP系统管理大量历史数据,提供汇总和聚集机制,并在不同的粒度级别上存储和管理信息,这些特点使得数据适合于决策分析。
(3)、数据库设计:通常,OLTP采用ER模型和面向应用的数据库设计,而OLAP系统通常采用星型模式或雪花模式和面向主题的数据库设计。
(4)、视图:OLTP系统主要关注一个企业或部门的当前数据,而不涉及历史数据或不同组织的数据。与之相反,OLAP系统常常跨越一个企业的数据库模式的多个版本,OLAP系统也处理来自不同组织的信息,由多个数据源集成的信息。
(5)、访问模式:OLTP系统的访问主要由短的原子事务组成,这种系统需要并发控制和恢复机制。而OLAP系统的访问大部份是只读操作,其中大部份是复杂查询。
(6)、度量:OLTP专注于日常时实操作,所以以事务吞吐量为度量,OLAP以查询吞吐量和响应时间来度量。
TechTarget中国原创内容,原文链接:http://www.searchdatabase.com.cn/showcontent_9526.htm
参考:
数据库设计 olap 百度