OLTP vs. OLAP

如题所述

第1个回答  2022-07-20


随着大数据技术在各行各业的深入应用,对于海量数据的分析需求也愈加凸显,OLAP技术也逐渐走入人们的视野,OLTP和OLAP看起来相似,但指的是不同类型的数据库系统。它们都是在线处理系统。本文将介绍一下二者的区别

介绍

OLTP,也叫联机事务处理(Online Transaction Processing),表示事务性非常高的系统,一般都是高可用的在线系统,以小的事务以及小的查询为主,评估其系统的时候,一般看其每秒执行的Transaction以及Execute SQL的数量 。在这样的系统中,单个数据库每秒处理的Transaction往往超过几百个,或者是几千个,Select 语句的执行量每秒几千甚至几万个。典型的OLTP系统有电子商务系统、银行、证券等,如美国eBay的业务数据库,关系型数据库(mysql、PostgreSQL、DB2、Oracle...)就是很典型的OLTP数据库。

特点


OLTP系统

数据库设计要求


介绍

OLAP(On-line Analytical Processing,联机分析处理)是在基于数据仓库多维模型的基础上实现的面向分析的各类操作的集合,60年代,关系数据库之父E.F.Codd提出了关系模型,促进了联机事务处理(OLTP)的发展(数据以表格的形式而非文件方式存储)。 1993年,E.F.Codd提出了OLAP概念,认为OLTP已不能满足终端用户对数据库查询分析的需要,OLAP的优势是基于数据仓库面向主题、集成的、保留 历史 及不可变更的数据存储,以及多维模型多视角多层次的数据组织形式,如果脱离了这两点,OLAP将不复存在,也就没有优势可言。在实际的商业分析中,OLAP联机分析更多的是指对数据分析的一种解决方案。 目前大数据业内非常流行的开源OLAP引擎Hive、SparkSQL、FlinkSQL、Clickhouse、Elasticsearch、Druid、Kylin、Presto、Impala分等, 但是可以说目前没有一个引擎能在数据量,灵活程度和性能上做到完美,用户需要根据自己的需求进行选型。

特点


分类

OLAP 是一种让用户可以从不同视角方便快捷地分析数据的计算方法。主流的 OLAP 可以分为3类:多维OLAP ( Multi-dimensional OLAP )、关系型OLAP ( Relational OLAP ) 和混合OLAP ( Hybrid OLAP ) 三大类。

OLAP系统

OLAP数据层次划分

OLAP多维数据结构

OLAP多维数据分析

OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 OLTP 系统强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作;OLAP 系统则强调数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。 OLTP系统最容易出现瓶颈的地方就是CPU与磁盘。 OLTP适用于数据量少,DML频繁,并行事务处理多的场景。OLAP适用数据量大,DML少。

相似回答