数据仓库与数据湖 数据仓库的区别_数据库


数据库和数据仓库有什么区别,小黎子以前还真没有仔细思考过这个问题。在互联网上关于这个两者之间的理论上的优点说法有很多种,真正要很好的理解并能够简洁的向客户阐述明白,让客户觉得建立数据仓库是一件值得做的事情,还是非常值得探讨一下的。


数据仓库与数据湖 数据仓库的区别_数据库_02


一、数据库和数据仓库存储数据的区别

个人理解数据库和数据仓库都是存储数据的地方,关键是存储数据的区别。数据仓库准确而言是一个逻辑的概念,依托RDBMS作为数据仓库平台。数据库存储的是原始数据,没经过任何加工;而数据仓库是为了满足数据分析需要设计的,对源数据进行了ETL(Extract,Transform,Load)过程,数据抽取工作分抽取、清洗、转换、装载。具体是怎样一个处理过程后续我会讲到,大家也可以从 比尔·恩门(Bill Inmon,数据仓库之父)的仓库定义四个特性进行理解。数据仓库系统一样还是会用数据库存储数据,但是与其他基础业务系统,例如财务系统、销售系统、人力资源系统等用数据库存储数据的区别:

1、基础业务系统的特点独立存放数据,例如财务系统生产了辣椒,用一个数据库来存放辣椒,人力资源系统生产了猪肉,再用一个数据库存放猪肉。如果我需要做一道菜农家小炒肉,就需要分别到各个数据库去取还是比较麻烦的。现实的情况是大部分时候让种菜的农民伯伯送过来,但送过来的东西不一定是我想要的,而且不同的时候我想要不同的东西, 经常会被农民伯伯骂, 弄得双方都不开心。


数据仓库与数据湖 数据仓库的区别_hive olap 数据仓库_03


2、另外一方面基础业务系统的数据存放规则不同, 各个数据库中放的是一些比较原始的东西,我要拿过来做菜,还需要经过很麻烦的清洗过程,一不小心里面可能就藏着一条大青虫。 那么, 数据仓库系统就是建立一个大的超市, 将各地农民伯伯出产的东西收集过来,清洗干净,分门别类地放好。这样,你要哪种菜的时候,直接从超市里面拿就可以了。


数据仓库与数据湖 数据仓库的区别_数据_04


二、数据仓库价值

数据仓库就是堆放公司所有数据的地方,之所以把数据都堆在一起,目的是为了从中间找到有价值的东西。 数据仓库更多的是一个概念,不要把数据仓库想成那些号称是数据仓库的软件产品。辅助建立数据仓库的软件产品是ETL工具,例如中软数据出品的SEDWA就是高效数据处理的ETL工具。数据仓库的建立和数据挖掘都是一个过程, 可以从数据仓库生命周期和 OLTP系统生命周期的区别进行理解。数据仓库的物理上就是数据库。相对业务系统数据库叫 OLTP数据库(用于业务处理),这种数据库叫 OLAP数据库(用于业务分析,个人认为 OLAP和数据库还是不能简单地称为 OLAP数据库,因为OLAP是针对特定问题的联机数据访问和数据分析而产生的一种技术,它满足数据分析决策从多种角度对数据进行快速、一致、交互地分析,克服传统数据分析决策交互能力差的弊病, 使决策者能够对数据进行深入观察。 OLAP服务器使用为用户预定义的多维数据视图对数据仓库的信息进行统计分析处理,为具有明确分析范围和分析要求的用户提供高性能的决策支持在线分析处理, 只是基于数据仓库(DW)上的一种多维分析方式, 当然我也可以不用 OLAP,直接做基于数据仓库的数据集市)。


数据仓库与数据湖 数据仓库的区别_数据_05


数据仓库的概念是针对以下基本需求产生的: 公司的业务系统很多,业务系统的历史数据不方便查询。不同的业务系统往往管理部门不同,地域不同。 能不能将所有这些数据集中起来, 再淘淘有没有有意义的业务规律。 数据仓库数据库往往很大,因为公司所有的数据集中得越多,越能淘到有价值的发现。例如数据仓库的数据随便就可能在10G以上。 数据仓库的组成十分繁杂,既有业务系统的历史数据,又有人事、财务数据,业务系统数据,还要自己建一些基础性的数据,例如,公共假期数据、地理信息、国家信息等等。 数据仓库概念包含从业务生产系统采集数据的程序, 这个程序还不能影响业务系统的运行(属于ETL过程), 数据仓库包括业务系统长期的历史数据,例如 5 年,用来分析(ODS数据)。数据仓库包括针对某相业务值 (例如销售量) 重新打上标签的业务流水数据。 (事实表和维度表)。 数据仓库概念还包含报表生成工具(BI工具)。这些工具能够达到几年前DSS(决策分析)的效果。 数据仓库的客户历史资量的分析,也许又与 CRM系统粘点边。 总之,一个公司想针对已有的历史业务数据,充分的利用它们,那么就上数据仓库项目。 至于哪些吓唬人的大写字母的组合, 只是达到这个目标的科学技术罢了。 牢记住数据仓库的基本需求,不要被大数据分析软件供应商吓着。

三、数据仓库是不是决策支持系统?

网上有人说数据仓库(DW)可以是决策支持系统 ,小黎子不同意这个观点, 决策支持系统 (DDS)是在管理信息系统的基础上发展起来的,在数据仓库、 OLAP技术和数据挖掘工具出现以前,就已经有 DSS了,但其在实际应用开发过程中暴露出许多问题, DW为克服传统 DDS存在的问题提供了技术上的支持,基于 DW上的 DSS效果自然有很大提升 ,能帮助老板了解企业的整体全貌,看到数据仓库提供的经过整理统计归纳的数据后老板凭自己的管理经验可以发现企业的问题或困难或成功因素在哪一方面,然后可以不断的追溯数据,直到确定到最具体的细节上,这样能够不断提升老板或管理层的管理水平,不断改善企业的管理。


数据仓库与数据湖 数据仓库的区别_数据仓库_06


我们知道的最好的一个购物篮分析的例子就是美国某大型超市啤酒和尿布的故事。 沃尔玛公司在美国的一位店面经理曾发现, 每周, 啤酒和尿布的销量都会有一次同比攀升,一时却搞不清是什么原因。后来,沃尔玛运用商业智能( Business Intelligence ,简称BI)技术发现,购买这两种产品的顾客几乎都是 25 岁到 35 岁、家中有婴儿的男性,每次购买的时间均在周末。沃尔玛在对相关数据分析后得知,这些人习惯晚上边看球赛、边喝啤酒,边照顾孩子,为了图省事而使用一次性的尿布。得到这个结果后,沃尔玛决定把这两种商品摆放在一起,结果,这两种商品的销量都有了显著增加。 数据库是数据仓库的基础。 数据仓库实际上也是由数据库的很多表组成的 ?(这句话明显不成立,数据仓库里表分为事实表和维表,这和数据库里的表还是有本质区别的,组织方式完全不一样, 一个是面向主题, 一个是面向业务的) 。需要把存放大量操作性业务数据的数据库经过筛选、抽取、归纳、统计、转换到一个新的数据库中。然后再进行数据展现。老板关注的是数据展现的结果。