上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.5 数据库和数据仓库的区别
在上文的讲解中,频繁地出现了两个概念:数据库和数据仓库。那么数据库和数据仓库究竟存在什么区别呢?
现在的数据库通常指的是关系型数据库。关系型数据库通常由多张二元的表组成,具有结构化程度高、独立性强、冗余度低等特点。也正是由于关系型数据库的这些特点,其主要进行OLTP(Online Transaction Processing,联机事务处理)分析,如用户去银行取一笔钱,银行账户里余额的减少就是典型的OLTP操作。
关系型数据库对OLTP分析操作的支持是毋庸置疑的,但是它也有解决不了的问题。举一个例子,一个大型连锁超市拥有上万种商品,在全球拥有成百上千家门店,超市经营者想知道在某个季度某种饮料的总销售额是多少,或者对某种商品的销售额影响最大的因素是什么,此时使用关系型数据就无法提供所需的数据了,数据仓库的概念就应运而生了。以上例子体现的是另外一种数据分析类型——OLAP(Online Analytical Processing,联机分析处理)。所以说数据库与数据仓库的区别实际上讲的是OLAP与OLTP的区别。
OLTP系统主要面向的是数据的随机读写操作,采用满足范式理论的关系模型存储数据,从而在事务处理中解决数据的冗余和一致性问题。而OLAP系统主要面向的是数据的批量读写操作,并不关注事务处理中的一致性问题,主要关注海量数据的整合,以及在复杂的大数据处理和查询中的性能问题,支持管理决策。