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

数据库与数据仓库的本质别如下:

数据中台 数据仓库 区别 数据中台和数据库区别数据中台 数据仓库 区别 数据中台和数据库区别


数据中台 数据仓库 区别 数据中台和数据库区别


数据中台 数据仓库 区别 数据中台和数据库区别


一、逻辑层面/概念层面不同:

1、数据库和数据仓库其实是一样的或者及其相似的,都是通过某个数据库软件,基于某种数据模型来组织、管理数据。

2、数据库通常更关注业务交易处理(OLTP),而数据仓库更关注数据分析层面(OLAP),由此产生的数据库模型上也会有很大的异。

二、运行速度上的不同:

1、数据库通常追求交易的速度,交易完整性,数据的一致性等,在数据库模型上主要遵从范式模型(1NF,2NF,3NF等),从而尽可能减少数据冗余,保证引用完整性;

2、而数据仓库强调数据分析的效率,复杂查询的速度,数据之间的相关性分析,所以在数据库模型上,数据仓库喜欢使用模型,从而提高数据分析的效率。

三、数据库和数据仓库软件不同:

1、数据库通常使用行式存储,如SAP ASE,Oracle, Microsoft SQL ,

2、而数据仓库倾向使用列式存储,如SAP IQ,SAP HANA。

目前NoSQL数据库仍然没有一个统一的标准,它现在有四种大的分类:

(1)键值对存储(key-value):代表软件Redis,它的优点能够进行数据的快速查询,而缺点是需要存储数据之间的关系。

(2)列存储:代表软件Hbase,它的优点是对数据能快速查询,数据存储的扩展性强。而缺点是数据库的功能有局限性。

(3)文档数据库存储:代表软件MongoDB,它的优点是对数据结构要求不特别的严格。而缺点是查询性的性能不好,同时缺少一种统一查询语言。

(4)图形数据库存储:代表软件InfoGrid,它的优点可以方便的利用图结构相关算法进行计算。而缺点是要想得到结果必须进行整个图的计算,而且遇到不适合的数据模型时,图形数据库很难使用。

NoSQL数据库适合追求速度和可扩展性、业务多变的应用场景。对于非结构化数据的处理更合适,如文章、评论,这些数据如全文搜索、机器学习通常只用于模糊处理,并不需要像结构化数据一样,进行查询,而且这类数据的数据规模往往是海量的,数据规模的增长往往也是不可能预期的,而NoSQL数据库的扩展能力几乎也是无限的。

所以NoSQL数据库可以很好的满足这一类数据的存储。NoSQL数据库利用key-value可以大量的获取大量的非结构化数据,并且数据的获取效率很高,但用它查询结构化数据效果就比较。

以上内容参考:

数据仓库的本质是什么?数据仓库的本质就是:完成从面向业务过程数据的组织管理到面向业务分析数据的组织和管理的转变过程。

业务过程数据的组织管理实际上就是由各种业务系统来完成的,比如ERP、CRM、OA等各类业务系统,他们解决的是基本的业务流程管理。通过数据的录入 Insert、删除Delete、修改 Update、查询 Search 即用户在业务系统作界面中做的增删改查作,这些作和业务系统底层的数据库例如MySQL、Oracle、SQL 完成了数据的交互,数据也沉淀在这些数据库中。

那么把各个业务系统的数据库比做是一个个粮食仓库的话,数据仓库就可以简单理解要把各个分散的粮食仓库的粮食搬运到一个更大的粮食仓库来集中管理。不同的的粮食仓库中存储的粮食可能不一样,有的粮食坏了可能不能吃了,那么在汇总到大的粮食仓库过程中就需要把这些坏掉的粮食给去除掉。还有在不同的粮食仓库中可能也存了一些同样的粮食,那么在搬运到大的粮食仓库中,就需要去做一些归类合并,按照更好的一种陈列方式将粮食摆放整齐,后对外支持的时候,就从这个大的粮食仓库直接取粮食就可以了。各类粮食都有,并且有很好的组织形式。这个从小的粮食仓库搬运、清洗转换、加载粮食的过程就是ETL过程,Extraction 抽取、Transformation 转换、Loading 加载。

所以,数据仓库的本质还是一个数据库,它将各个异构的数据源数据库的数据给统一管理起来,并且完成了质量较的数据的剔除、格式转换,终按照一种合理的建模方式来完成源数据组织形式的转变,以更好的支持到前端的可视化分析。

在这个过程中,有的时候可能用普通的汽车搬运粮食,有的可能用飞机运粮食,有的可能需要每小时运一次,有的可能就需要每天运一次或者每月运一次,这就是 ETL 工具的选择和数据抽取调度以及抽取频次的管理。有的时候粮食比较多,一般的粮食仓库容量不够,或者要求效率更高,就会选择不同的粮食仓库架构来进行管理,这就是数据仓库技术框架的选择,是选择大数据技术框架,还是一般的技术框架就可以满足,终决定了我们要建设这个数据仓库的投入成本。

数据中台和数据仓库什么关系?

数据中台简单理解就是把很多大数据工具封装在一起,可以令数据分析 简单化。

数据中台基于数据和算法来科学决策,拥有为数据决策提供战略的能力。数据中台面向热数据,面向未来的预测,是对业务的指导。数据中台形成的数据要服务业务前端,这是数据中台和数据仓库的本质区别。

数据中台是进阶版的数据仓库。数据仓库只能储存结构化数据,而数据中台可以储存业务数据库、日志数据、埋点数据、爬虫数据、外部数据等全域数据。

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

数据库与数据仓库的本质别如下:

1、逻辑层面/概念层面:数据库和数据仓库其实是一样的或者及其相似的,都是通过某个数据库软件,基于某种数据模型来组织、管理数据。但是,数据库通常更关注业务交易处理(OLTP),而数据仓库更关注数据分析层面(OLAP),由此产生的数据库模型上也会有很大的异。

2、数据库通常追求交易的速度,交易完整性,数据的一致性等,在数据库模型上主要遵从范式模型(1NF,2NF,3NF等),从而尽可能减少数据冗余,保证引用完整性;而数据仓库强调数据分析的效率,复杂查询的速度,数据之间的相关性分析,所以在数据库模型上,数据仓库喜欢使用模型,从而提高数据分析的效率。

3、产品实现层面:数据库和数据仓库软件是有些不同的,数据库通常使用行式存储,如SAP

ASE,Oracle,Microsoft

SQL

,而数据仓库倾向使用列式存储,如SAP

IQ,SAP

HANA。

数据库和数据仓库有什么区别

简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的

数据库一般存储在线交易数据,数据仓库存储的一般是历史数据

数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计

数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表

维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID

单从概念上讲,有些晦涩

任何技术都是为应用服务的,结合应用可以很容易地理解

以银行业务为例

数据库是事务系统的数据平台,客户在银行做的每笔交易都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐

数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据

比如,某银行某分行一个月发生多少交易,该分行当前存款余额是多少

如果存款又多,消费交易又多,那么该地区就有必要设立ATM了

显然,银行的交易量是巨大的,通常以百万甚至千万次来计算

事务系统是实时的,这就要求时效性,客户存一笔钱需要几十秒是无法忍受的,这就要求数据库只能存储很短一段时间的数据

而分析系统是事后的,它要提供关注时间段内所有的有效数据

这些数据是海量的,汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了

数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它决不是所谓的“大型数据库”

那么,数据仓库与传统数据库比较,有哪些不同呢?让我们先看看W

HInmon关于数据仓库的定义:面向主题的、集成的、与时间相关且不可修改的数据

“面向主题的”:传统数据库主要是为应用程序进行数据处理,未必按照同一主题存储数据;数据仓库侧重于数据分析工作,是按照主题存储的

这一点,类似于传统农贸市场与超市的区别—市场里面,白菜、萝卜、香菜会在一个摊位上,如果它们是一个小贩卖的;而超市里,白菜、萝卜、香菜则各自一块

也就是说,市场里的菜(数据)是按照小贩(应用程序)归堆(存储)的,超市里面则是按照菜的类型(同主题)归堆的

“与时间相关”:数据库保存信息的时候,并不强调一定有时间信息

数据仓库则不同,出于决策的需要,数据仓库中的数据都要标明时间属性

决策中,时间属性很重要

同样都是累计购买过九车产品的顾客,一位是近三个月购买九车,一位是近一年从未买过,这对于决策者意义是不同的

“不可修改”:数据仓库中的数据并不是新的,而是来源于其它数据源

数据仓库反映的是历史信息,并不是很多数据库处理的那种日常事务数据(有的数据库例如电信计费数据库甚至处理实时信息)

因此,数据仓库中的数据是极少或根本不修改的;当然,向数据仓库添加数据是允许的

数据仓库的出现,并不是要取代数据库

目前,大部分数据仓库还是用关系数据库管理系统来管理的

可以说,数据库、数据仓库相辅相成、各有千秋

补充一下,数据仓库的方案建设的目的,是为前端查询和分析作为基础,由于有较大的冗余,所以需要的存储也较大

为了更好地为前端应用服务,数据仓库必须有如下几点优点,否则是失败的数据仓库方案

1效率足够高

客户要求的分析数据一般分为日、周、月、季、年等,可以看出,日为周期的数据要求的效率,要求24小时甚至12小时内,客户能看到昨天的数据分析

由于有的企业每日的数据量很大,设计不好的数据仓库经常会出问题,延迟1-3日才能给出数据,显然不行的

2数据质量

客户要看各种信息,肯定要准确的数据,但由于数据仓库流程至少分为3步,2次ETL,复杂的架构会更多层次,那么由于数据源有数据或者代码不严谨,都可以导致数据失真,客户看到错误的信息就可能导致分析出错误的决策,造成损失,而不是效益

3扩展性

之所以有的大型数据仓库系统架构设计复杂,是因为考虑到了未来3-5年的扩展性,这样的话,客户不用太快花钱去重建数据仓库系统,就能很稳定运行

主要体现在数据建模的合理性,数据仓库方案中多出一些中间层,使海量数据流有足够的缓冲,不至于数据量大很多,就运行不起来了

数据湖、数据仓库、数据中台,有什么区别?

数据湖、数据仓库和数据中台,他们并没有直接的关系,只是他们为业务产生价值的形式有不同的侧重。

数据湖作为一个集中的存储库,可以在其中存储任意规模的所有结构化和非结构化数据。在数据湖中,可以存储数据不需要对其进行结构化,就可以运行不同类型的分析。

数据仓库,也称为企业数据仓库,是一种数据存储系统,它将来自不同来源的结构化数据聚合起来,用于业务智能领域的比较和分析,数据仓库是包含多种数据的存储库,并且是高度建模的。

数据中台是一个承接技术,业务,构建规范定义的、全域可连接萃取的、智慧的数据处理平台,建设目标是为了高效满足前台数据分析和应用的需求。数据中台距离业务更近,能更快速的相应业务和应用开发的需求,可追溯,更精准。

数据湖、数据仓库更多地是面向不同对象的不同形态的数据资产。而数据中台更多强调的是服务于前台,实现逻辑、标签、算法、模型的复用沉淀。

数据中台像一个“数据工厂”,涵盖了数据湖、数据仓库等存储组件,随着数据中台的发展,未来很有可能数据湖和数据仓库的概念会被弱化。

小结

数据空间持续增长,为了更好地发挥数据价值,未来数据技术趋于融合,同时也在不断创新。

数据仓库与数据库的区别

数据仓库是数据库概念的升级,和数据库相比,数据仓库要比数据库更加庞大;数据仓库主要用于分析数据,数据库主要用于捕获数据;数据仓库主要存储历史数据,数据库存储在线交易数据;数据仓库的基本元素是维度表,数据库的基本元素是事实表。

数据仓库的组成部分包括数据抽取工具、数据库、信息发布系统、数据仓库管理、元数据、数据集市、访问工具。数据仓库的数据建模分为四个阶段,分别是业务建模、领域概念建模、逻辑建模、物理建模。

数据仓库并不能取代数据库,两者是相辅相成的关系,数据仓库主要面向主题设计,数据库主要面向事务的设计。

资料拓展:数据仓库,英文名称为DataWarehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略。它是单个数据存储,出于分析性报告和决策支持目的而创建。数据仓库是决策支持系统(dss)和联机分析应用数据源的结构化数据环境。

数据库与数据仓库的区别

1. 主要区别在于数据结构,数据库中的建模一般遵循三范式,而数据仓库的建模有特定的方式,一般采用维度建模(你可以参考ralph kimball、bill inmon、还有一种叫DV模型的作者忘记叫啥了),使用这些建模方式的原因是便于OLAP建立,增加统计查询较率等。

2. 数据仓库中数据通常来源于多个不同的业务系统数据库(存储多年数据),数据量较大,一般做为企业数据中心用。

3. 数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。

4. 数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。

5. 数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID。

6. 数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它决不是所谓的“大型数据库”。

知识拓展:数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。