OLTP 与 OLAP
OLTP(On Line Transaction Processing,联机事务处理)
系统主要针对具体业务在数据库联机下的日常操作,适合对少数记录进行查询、修改,例如财务管理系统、ERP系统、交易管理系统等。该类系统侧重于基本的、日常的事务处理,是业务系统的“压舱石”保障业务正常运行。对于该类系统,用户较为关心操作响应时间、数据安全性、数据完整性和并发支持的用户数等。
OLAP(On Line Analytical Processing,联机分析处理)
系统主要针对某些主题的历史数据进行分析,辅助管理决策制定,主要包括数据仓库、数据集市、管理分析系统等。该类系统侧重于复杂的分析查询操作,是业务系统的“船帆”,提供决策支撑。OLAP 系统的数据一般来源于 OLTP 系统。
数据库 与 数据仓库
数据库
1)用于OLTP
2)数据库是面向事物处理的,数据是由日常的业务产生的,会有频繁的增删改操作
3)数据库一般用来存储当前事务性数据,如交易数据、业务数据
4)数据库的设计一般是符合三范式的,有最大的精确度和最小的冗余度,有利于数据的操作
5)数据库“通常”采用集中式架构,数据存储在一个服务器上,以行存居多
6)数据量相对小
7)对响应要求高,一般为毫秒级别
8)常见选型:MySQL、PostgreSQL、Oracle
数据仓库
1)用于OLAP
2)数据仓库是面向主题的,数据相对稳定,来源多样,经过ETL得到,用来分析,决策支撑
3)数据仓库一般存储的历史数据
4)数据仓库的设计一般不符合三范式,并且反规划范,有利于查询
5)数据仓库“通常”采用分布式架构,数据分散存储在多个服务器上,以列存居多
6)数据量较大
7)对数据及时性要求一般不高
8)常见选型:华为云DWS、Doris、TiDB、ClickHouse、Greenplum