数据仓库与数据库有何异同

数据仓库与数据库有何异同,第1张

数据库是面向事务的设计,数据仓库是面向主题设计的。数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。

“与时间相关”:数据库保存信息的时候,并不强调一定有时间信息。数据仓库则不同,出于决策的需要,数据仓库中的数据都要标明时间属性。决策中,时间属性很重要。同样都是累计购买过九车产品的顾客,一位是最近三个月购买九车,一位是最近一年从未买过,这对于决策者意义是不同的。

“不可修改”:数据仓库中的数据并不是最新的,而是来源于其它数据源。数据仓库反映的是历史信息,并不是很多数据库处理的那种日常事务数据(有的数据库例如电信计费数据库甚至处理实时信息)。因此,数据仓库中的数据是极少或根本不修改的;当然,向数据仓库添加数据是允许的。

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

目前,大部分数据仓库还是用关系数据库管理系统来管理的。可以说,数据库、数据仓库相辅相成、各有千秋。

数据是用于荷载信息的物理符号。

数据的特征是:1,数据有型和值之分;2,数据受数据类型和取值范围的约束;3,数据有定性表示和定量表示之分;4,数据应具有载体和多种表现形式。

数据与信息的关系为:数据是信息的一种表现形式,数据通过能书写的信息编码表示信息。信息有多仲表现形式,它通过手势、眼神、声音或图形等方式表达,但是数据是信息的最佳表现形式。由于数据能够书写,因而它能够被记录、存储和处理,从中挖掘出更深层的信息。但是,数据不等于信息,数据只是信息表达方式中的一种。正确的数据可以表达信息,而虚假、错误的数据所表达的谬误,不是信息。

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

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

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

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

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

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

知识拓展:

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

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

大数据本质是一种概念,既数据体量大、数据格式复杂、数据来源广。而数据库则是一种具体的计算机技术,用来存储数据,常见的数据库有Mysql数据库、Oracle数据库等,底层还是基于磁盘来进行存储。

从大数据在引申出来的技术,比如数据量大的情况,怎么存储数据,以及怎么对这些数据进行加工处理。像现在HBase大数据组件,主要是针对大数据存储的,HadoopMapReduce计算框架、Spark计算框架等,则是针对大数据计算的。

大数据与数据库之间的关系,从大数据涉及到的技术中,包括数据库技术。因为在大数据情况下,也需要存储这些数据,此时就需要使用到数据库。当然,大数据技术存储数据不仅仅能够使用到数据库,还可以使用分布式文件系统,比如HDFS分布式文件系统,亚马逊的S3等。

同时,在大数据所涉及到的技术中,也包括了大数据计算、数据的展示等等。所以从技术领域来区分,大数据的技术会更广,而数据库技术则是更加的具体,就是用来存储数据。

目前在国内互联网公司而言,大数据方面数据库使用最多的还是HBase列式数据库。比如阿里巴巴,其内部有很多使用HBase列式数据库的场景。HBase数据库支持水平扩展,同时由于其采用LSM架构,天然的对数据写入支持非常好,因为是对磁盘进行追加写的模式,这比对内存随机写要更加的快速。

不仅仅是阿里,像在小米其实也有很多使用HBase列式数据库的场景,当然,其他小公司也在使用。所以在未来,我认为HBase列式数据库的发展前景非常好,毕竟也有互联网大厂在使用,开源社区方面也有它们在推动发展。如果你想学习一门大数据方面的数据库技术的话,我推荐你可以学习HBase。

我是Lake,专注大数据技术原理、人工智能、数据库技术、程序员经验分享,如果我的问答对你有帮助的话,希望你能点赞

数据库 data base 为满足某一部门中多个用户多种应用的需要,按照一定的数据模型在计算机系统中组织、存储和使用的互相联系的数据集合;

数据集在断开缓存中存储数据。数据集的结构类似于关系数据库的结构;它公开表、行和列的分层对象模型。另外,它包含为数据集定义的约束和关系。

数据集可以类型化或非类型化。类型化数据集这样一种数据集,它先从基 DataSet 类派生,然后使用 XML 架构文件(xsd 文件)中的信息生成新类。架构中的信息(表、列等)被作为一组第一类对象和属性生成并编译为此新数据集类。

因为类型化 DataSet 类从基 DataSet 类继承,所以此类型化类承接 DataSet 类的所有功能,并且可与将 DataSet 类的实例作为参数的方法一起使用。

相形之下,非类型化数据集没有相应的内置架构。与类型化数据集一样,非类型化数据集也包含表、列等,但它们只数据集在断开缓存中存储数据。数据集的结构类似于关系数据库的结构;它公开表、行和列的分层对象模型。另外,它包含为数据集定义的约束和关系。

数据集可以类型化或非类型化。类型化数据集这样一种数据集,它先从基 DataSet 类派生,然后使用 XML 架构文件(xsd 文件)中的信息生成新类。架构中的信息(表、列等)被作为一组第一类对象和属性生成并编译为此新数据集类。

因为类型化 DataSet 类从基 DataSet 类继承,所以此类型化类承接 DataSet 类的所有功能,并且可与将 DataSet 类的实例作为参数的方法一起使用。

相形之下,非类型化数据集没有相应的内置架构。与类型化数据集一样,非类型化数据集也包含表、列等,但它们只数据集在断开缓存中存储数据。数据集的结构类似于关系数据库的结构;它公开表、行和列的分层对象模型。另外,它包含为数据集定义的约束和关系。

数据集可以类型化或非类型化。类型化数据集这样一种数据集,它先从基 DataSet 类派生,然后使用 XML 架构文件(xsd 文件)中的信息生成新类。架构中的信息(表、列等)被作为一组第一类对象和属性生成并编译为此新数据集类。

因为类型化 DataSet 类从基 DataSet 类继承,所以此类型化类承接 DataSet 类的所有功能,并且可与将 DataSet 类的实例作为参数的方法一起使用。

相形之下,非类型化数据集没有相应的内置架构。与类型化数据集一样,非类型化数据集也包含表、列等,但它们只数据集在断开缓存中存储数据。数据集的结构类似于关系数据库的结构;它公开表、行和列的分层对象模型。另外,它包含为数据集定义的约束和关系。

数据集可以类型化或非类型化。类型化数据集这样一种数据集,它先从基 DataSet 类派生,然后使用 XML 架构文件(xsd 文件)中的信息生成新类。架构中的信息(表、列等)被作为一组第一类对象和属性生成并编译为此新数据集类。

因为类型化 DataSet 类从基 DataSet 类继承,所以此类型化类承接 DataSet 类的所有功能,并且可与将 DataSet 类的实例作为参数的方法一起使用。

相形之下,非类型化数据集没有相应的内置架构。与类型化数据集一样,非类型化数据集也包含表、列等,但它们只作为集合公开!

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

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

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

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

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

第三个阶段,一般需要 3-5 年左右的时间,随着业务指数级的增长,数据量的会陡增,公司角色也开始多了起来,开始有了 CEO、CMO、CIO,大家需要面临的问题越来越复“上个月的 PV、UV 是多少”,逐渐演化到非常精细化和具体的用户的集群分析,特定用户在某种使用场景中。

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

最后总结一下:

数据库 比较流行的有:MySQL, Oracle, SqlServer等

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

以上就是关于数据仓库与数据库有何异同全部的内容,包括:数据仓库与数据库有何异同、什么是数据库数据有什么特征数据和信息有什么关系、数据仓库和数据库有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10191222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存