首页 > 技术文章 > 数据库和数据仓库的区别

jing-yan 2020-03-22 21:49 原文

1.概念方面.数据库:是一种逻辑概念,用来存放数据的仓库。通过数据库软件来实现。数据库由很多表组成,表是二维的,一张表里可以有很多字段。字段一字排开,对应的数据就一行一行写入表中。数据库的表,在于能够用二维表现多维关系。目前市面上流行的数据库都是二维数据库。如:Oracle、DB2、MySQL、Sybase、MS SQL Server等。

数据仓库:是数据库概念的升级。从逻辑上理解,数据库和数据仓库没有区别,都是通过数据库软件实现的存放数据的地方,只不过从数据量来说,数据仓库要比数据库更庞大得多。数据仓库主要用于数据挖掘和数据分析,辅助领导做决策。

数据库是跟业务挂钩的,而数据库不可能装下一个公司的所有数据,因此数据库的设计通常是针对一个应用进行设计的。

数据仓库是依照分析需求、分析维度、分析指标进行设计的。

2.

数据仓库的特点

数据仓库是面向主题的

那么什么是主题呢,简单来说,主题就是用户在使用数据仓库时所关心的方面。

数据仓库时不支持修改的

这点好理解,数据仓库不像数据库,不支持update和delete操作。

数据仓库的数据是随时间的变化而变化的

这与上一条并不冲突,这个变化不是指update或是delete儿产生的变化,而是随着时间的变化,不断的增加新的内容,或是删除旧的内容。

数据仓库是多个异构数据源所集成的

数据仓库存储的一般是历史数据

数据仓库是弱事务的,因为数据仓库存的是历史数据,一般都读(分析)数据场景。

3二者主要区别:数据库和数据仓库的区别

数据库是为捕获数据而设计,数据仓库是为分析数据而设计。

数据库是面向事务的设计,数据仓库是面向主题设计的。

数据库一般存储业务数据,数据仓库存储的一般是历史数据。

数据库设计是尽量避免冗余,一般针对某一业务应用进行设计,比如一张简单的 User 表,记录用户名、密码等简单数据即可,符合业务应用,但是不符合分析。数据仓库在设计是有意引入冗余,依照分析需求,分析维度、分析指标进行设计。

推荐阅读