1.RDBMS数据库
随着关系数据库理论的提出,诞生了一系列经典的RDBMS,如Oracle,MySQL,SQL Server等。这些RDBMS被成功推向市场,并为社会信息化的发展做出的重大贡献。然而随着数据库使用范围的不断扩大,它被逐步划分为两大基本类型:
(1)操作型数据库
主要用于业务支撑。一个公司往往会使用并维护若干个数据库,这些数据库保存着公司的日常操作数据,比如商品购买、酒店预订、学生成绩录入等;
(2)分析型数据库
主要用于历史数据分析。这类数据库作为公司的单独数据存储,负责利用历史数据对公司各主题域进行统计分析;
2.操作型数据库 VS 分析型数据库
因为主导功能的不同(面向操作/面向分析),两类数据库就产生了很多细节上的差异:
(1)定位不同(数据以何种目的组织起来)
操作型数据库是为了支撑具体业务的,因此也被称为"面向应用型数据库",使用者是业务环境内的各个角色,如用户,商家,进货商等;
分析型数据库则是针对各特定业务主题域的分析任务创建的,因此也被称为"面向主题型数据库"。使用者只是少量用来做综合性决策的用户。
(2)数据不同
操作型数据库主要是存放90天以内的明细数据,反映的是现实世界的当前状态。
分析型数据库存放的则主要是存放数年内的明细+汇总数据(用户重点关注汇总数据),反映的是当前状态和过去各时刻的快照。
关于汇总数据特别说明:
操作型数据库中自然也有汇总需求,但汇总数据本身不存储而只存储其生成公式。这是因为操作型数据是动态变化的,因此汇总数据会在每次查询时动态生成。
而对于分析型数据库来说,因为汇总数据比较稳定不会发生改变,而且其计算量也比较大(因为时间跨度大),因此它的汇总数据可考虑事先计算好,以避免重复计算。
(3)性能要求不同
操作型数据库操作的数据量少而频率多,系统对于大量用户并发读和写性能要求比较高。
分析型数据库操作则的数据量大而频率少,系统对于大数据量的读性能要求比较高。
3.数据仓库定义
一个企业的、面向主题的、集成的、相对稳定的、反映历史变化的数据集合。
(1)企业范围
数据仓库内的数据是面向公司全局的。比如某个主题域为成本,则全公司和成本有关的信息都会被汇集进来;
(2)面向主题
面向主题特性是数据仓库和操作型数据库的根本区别。操作型数据库是为了支撑各种业务而建立,而分析型数据库则是为了对从各种繁杂业务中抽象出来的分析主题(如用户、成本、商品等)进行分析而建立;
(3)集成性
集成性是指数据仓库会将不同源数据库中的数据汇总到一起;
(4)相对稳定的(时变性)
时变性是指数据仓库包含来自其时间范围不同时间段的数据快照。有了这些数据快照以后,用户便可将其汇总,生成各历史阶段的数据分析报告;
(5)历史性
较之操作型数据库,数据仓库的时间跨度通常比较长。前者通常保存几个月,后者可能几年甚至几十年;
参考文档: