数据库和数据仓库的本质区别是什么?

关于数据库和数据仓库的本质区别到底是什么?我们先来看一个例子。

拿电商行业来说好了。基本每家电商公司都会经历,从只需要业务数据库到要数据仓库的阶段。

电商早期启动非常容易,入行门槛低。找个外包团队,做了一个可以下单的网页前端 + 几台服务器 + 一个MySQL,就能开门迎客了。这好比手工作坊时期。

第二阶段,流量来了,客户和订单都多起来了,普通查询已经有压力了,这个时候就需要升级架构变成多台服务器和多个业务数据库(量大+分库分表),这个阶段的业务数字和指标还可以勉强从业务数据库里查询。初步进入工业化。

第三个阶段,一般需要 3-5 年左右的时间,随着业务指数级的增长,数据量的会陡增,公司角色也开始多了起来,开始有了 CEO、CMO、CIO,大家需要面临的问题越来越复杂,越来越深入。高管们关心的问题,从最初非常粗放的:“昨天的收入是多少”、“上个月的 PV、UV 是多少”,逐渐演化到非常精细化和具体的用户的集群分析,特定用户在某种使用场景中,例如“20~30岁女性用户在过去五年的第一季度化妆品类商品的购买行为与公司进行的促销活动方案之间的关系”。

这类非常具体,且能够对公司决策起到关键性作用的问题,基本很难从业务数据库从调取出来。原因在于:
1、业务数据库中的数据结构是为了完成交易而设计的,不是为了而查询和分析的便利设计的。
2、业务数据库大多是读写优化的,即又要读(查看商品信息),也要写(产生订单,完成支付)。因此对于大量数据的读(查询指标,一般是复杂的只读类型查询)是支持不足的。

而怎么解决这个问题,此时我们就需要建立一个数据仓库了,公司也算开始进入信息化阶段了。数据仓库的作用在于:
1、数据结构为了分析和查询的便利;
2、只读优化的数据库,即不需要它写入速度多么快,只要做大量数据的复杂查询的速度足够快就行了。

那么在这里前一种业务数据库(读写都优化)的是业务性数据库,后一种是分析性数据库,即数据仓库。

最后总结一下:
数据库:传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。

数据仓库:数据仓库系统的主要应用主要是OLAP(On-Line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。

从这个例子里面,我们可以很清楚的分辨数据库和数据仓库的区别。

数据仓库存在的目的是为了给决策提供数据支持。也就是说,它的作用不是为了业务,而是为了帮助管理者做出决策而提供数据证明的。因此,这里面会存放从多个数据源获取的,大量的,整理有序的数据(这里我们说的整理有序的的意思是数据仓库的数据结构。因为数据仓库的数据来自于各种不同不样的数据源,为了我们分析数据方便,处理数据快,所以我们要把这些乱七八糟的数据整理成有序的数据。)

那么说了这么多,我们扣题一下,数据库和数据仓库的本质区别是什么??
我认为,实际上,这两者的主要区别在于数据结构!

数据库中的建模一般遵循三范式,而数据仓库的建模有特定的方式,一般采用多维度建模(星形,雪花形。数据仓库使用使用这些建模方式的原因是便于OLAP建立,增加统计查询较率等。 )。

初学者不好理解的话,就想简单点。
说白了通常的数据仓库都是在数据库上建立的,仅仅是使用技术不同,如果说软件产品其实就是关系型数据库(这句话放到现在不是很准确,不过早期确实是这样),例如:Oracle、MS SQL SERVER等,也有一些专用的例如teradata等。

你可以粗暴的这样理解。
数据仓库的数据都放在数据库里面,就好象粮仓里的米是放在米袋子(可以看成是数据库)里面,而这些米袋子放在一块形成一个米仓(数据集市),当然粮仓里面还放了其他的粮食(数据集市),很多个数据集市形成一个数据仓库,而数据库只是存储这些数据的媒介。这些数据通过抽取,挖掘,统计,最后到决策者手中,用以决策。

数据库比较流行的有:MySQL, Oracle, SqlServer等
数据仓库比较流行的有:AWS Redshift, Greenplum, Hive等

而把数据从业务性的数据库中提取、加工、导入分析性的数据仓库就是传统的 ETL 工作

最后来一张图片
这里写图片描述
参考文章:
数据库与数据仓库到底有什么区别?
数据库 与 数据仓库的本质区别是什么?—陈诚

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值