数据仓库那些事儿 (2)

数据仓库那些事儿

设计数据仓库是一件比较困难以及长期的事情,所以我们一开始应该清楚得定义它的实现范围,也就是要明确实现目的,而且需求应该是详细,业务是可实现的,可量化的。

五、数据仓库 vs 数据库

通过上面我们了解了数据仓库,那么现在可以来回答文中一开始的问题。

传统数据库是为存储而生,而数据仓库很明显,是为分析而生。实现目的的不同一开始就注定它们的差异。传统数据库包括增删改查,但数据仓库注重查询。 传统数据库的主要任务是执行联机事务处理,简称 OLTP ( Online Transaction Processing)。主要负责日常操作,如购物,制造。

数据仓库系统在数据分析和决策方面为用户或“知识工人”提供服务,可以以不同的格式组织和提供数据,以便应付不同的需求,这种系统称作联机分析处理,简称 OLAP ( Online Analytical Processing )。

下面我们通过对比 OLAP 和 OLTP 的区别,就能详细知道数据仓库和数据库的区别。 首先考虑用户和系统的面向对象,OLTP 是面向顾客的,用户操作员,客户和信息技术人员的事务和查询处理。OLAP 是面向市场的,用于知识工人的数据分析。

数据内容:OLTP 管理当前数据。但是一般这种数据比较琐碎,很难用于决策。OLAP系统管理大量历史数据,提供汇总和聚集机制,而且在不同的粒度层上存储和管理信息。

数据库设计:OLTP 系统采用实体-联系(ER)数据模型和面向应用的数据库设计。而 OLAP 系统采用星形或雪花模型和面向主题的数据库设计。

视图:OLTP 关注一个企业或部门内部的当前数据,不涉及历史数据或不同单位的数据。OLAP 经常需要跨域数据库模式的不同版本。

访问模式: OLTP 系统主要由短的原子事务组成,一般需要并发控制和恢复机制。而 OLAP 系统的访问大部分是只读操作。

下面用个表格总结看起来比较明朗

特征

 

OLTP

 

OLAP

 

特性

 

操作处理

 

信息处理

 

面向

 

事务

 

分析

 

用户

 

办事员、DBA、数据库专业人员

 

知识工人(如经理,主管,分析人员)

 

功能

 

日常操作

 

长期信息需求,决策支持

 

DB设计

 

基于E-R,面向应用

 

星形/雪花、面向主题

 

数据

 

当前的,确保最新的

 

历史的,跨时间维护

 

汇总

 

原始的、高度详细

 

汇总的、统一的

 

视图

 

详细、一般关系

 

汇总的、多维的

 

工作单元

 

短的,简单事务

 

复杂查询

 

访问

 

读/写

 

大多为读

 

关注

 

数据进入

 

信息输出

 

操作

 

主码上索引/散列

 

大量扫描

 

访问记录数量

 

数十

 

数百万

 

用户数

 

数千

 

数百

 

DB规模

 

GB到高达GB

 

≥TB

 

优先

 

高性能、高可用性

 

高灵活性、终端用户自治

 

度量

 

事务吞吐量

 

查询吞吐量、响应时间

 
六、数据仓库有什么用

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsxdzj.html