发布网友 发布时间:2022-04-20 06:28
共4个回答
热心网友 时间:2022-04-09 06:34
数据库与数据仓库的本质差别如下:
1、逻辑层面/概念层面:数据库和数据仓库其实是一样的或者及其相似的,都是通过某个数据库软件,基于某种数据模型来组织、管理数据。但是,数据库通常更关注业务交易处理(OLTP),而数据仓库更关注数据分析层面(OLAP),由此产生的数据库模型上也会有很大的差异。
2、数据库通常追求交易的速度,交易完整性,数据的一致性等,在数据库模型上主要遵从范式模型(1NF,2NF,3NF等),从而尽可能减少数据冗余,保证引用完整性;而数据仓库强调数据分析的效率,复杂查询的速度,数据之间的相关性分析,所以在数据库模型上,数据仓库喜欢使用*模型,从而提高数据分析的效率。
3、产品实现层面:数据库和数据仓库软件是有些不同的,数据库通常使用行式存储,如SAP ASE,Oracle, Microsoft SQL Server,而数据仓库倾向使用列式存储,如SAP IQ,SAP HANA。
热心网友 时间:2022-04-09 07:52
简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的。
数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。
数据库设计是尽量避免冗余,
一般采用符合范式的规则来设计,
数据仓库在设计是有意引入
冗余,采用反范式的方式来设计。
数据库是为捕获数据而设计,
数据仓库是为分析数据而设计,
它的两个基本的元素是维表和
事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放
着要查询的数据,同时有维的
ID
。
单从概念上讲,
有些晦涩。任何技术都是为应用服务的,
结合应用可以很容易地理解。
以银
行业务为例。
数据库是事务系统的数据平台,
客户在银行做的每笔交易都会写入数据库,
被
记录下来,
这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,
它从
事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某银行某分行一个
月发生多少交易,该分行当前存款余额是多少。如果存款又多,消费交易又多,那么该地区
就有必要设立
ATM
了。
显然,
银行的交易量是巨大的,
通常以百万甚至千万次来计算。事务系统是实时的,这就要
求时效性,
客户存一笔钱需要几十秒是无法忍受的,
这就要求数据库只能存储很短一段时间
的数据。
而分析系统是事后的,
它要提供关注时间段内所有的有效数据。
这些数据是海量的,
汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了。
数据仓库,
是在数据库已经大量存在的情况下,
为了进一步挖掘数据资源、
为了决策需要而
产生的,它决不是所谓的“大型数据库”
。那么,数据仓库与传统数据库比较,有哪些不同
呢
?
让我们先看看
W.H.Inmon
关于数据仓库的定义
:
面向主题的、
集成的、
与时间相关且不可
修改的数据集合。
热心网友 时间:2022-04-09 09:27
数据仓库是决策支持系统和联机分析应用数据源的结构化数据环境,其重要的特征在于面向主题、集成性、稳定性和时变性。
数据库主要是面向事务处理任务
数据仓库是为了进一步挖掘数据资源、为了决策需要而产生的,它并不是所谓的“大型数据库”。数据仓库的方案建设的目的,是为前端查询和分析作为基础,由于有较大的冗余,所以需要的存储也较大。
热心网友 时间:2022-04-09 11:18
数据库用于事务处理,数据仓库用于决策分析。