- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
主讲人:雷明大数据与云计算
知识点HBASE数据库简介
存储与管理贯穿大数据处理过程的始终。引言
传统的关系型数据库难以应对大数据挑战。
我们知道一台普通PC机的硬盘大概可以存储1Tb的数据,那么10Tb,100Tb,1000Tb怎么办?再比如现在我们大多数同学都有云存储空间,而且还不小有50GB的空间,那么10个、100个、10000个同学呢?我们说1万个同学就有1万个50GB大小的空间,也就是500TB,这500TB的信息显然不可能在一台计算机上存储。那又该如何存储,如何查询呢?分布式数据库
HBase是一个分布式的非关系型数据库,一个高可靠、高性能、可伸缩的分布式数据库,是Nosql数据库,也就是NotOnly的缩写。它的扩展性强,并发性能好,数据模型灵活。属于Hadoop的组件,它使用Java语言编写,需要运行在HDFS文件系统之上,使用Zookeeper作为协同服务组件。HBase与Hadoop当中的其他组件一样,可以运行在多台计算机上,可以提供数10亿行乘以数百万列的大数据存储、管理,以及随机访问和实时读、写的能力。分布式数据库
数据库的核心目的是实现数据的高效管理,传统关系数据库一度占据商业数据库应用的主流位置分布式数据库完备的关系理论基础事务管理机制的支持高效的查询优化机制
随着web2.0应用的发展,关系数据库逐渐呈现不足:Schema-lessScalableNotransactionsSemi-structuredSchemaHardtoscaleTransactionalStructured并发性可扩展性可用性分布式数据库
HBase的原型是Google的分布式存储系统BigTableBigTable使用谷歌分布式文件系统GFS作为底层数据存储,配合MapReduce分布式并行计算模型来处理海量数据,采用Chubby提供协同服务管理可以扩展到PB级别的数据和上千台机器,具备广泛应用性、可扩展性、高性能和高可用性等特点。
作为BigTable的开源实现,HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库,主要用来存储非结构化和半结构化的数据。HBase的目标是处理非常庞大的表,通过水平扩展的方式,利用廉价计算机集群处理由超过10亿行数据和数百万列属性组成的数据表
数据类型:关系数据库采用关系模型,具有丰富的数据类型和存储方式,比如我们刚才说的同学的成绩,这个就是整型的数据类型,只能是整数。姓名就是字符型,长度也可以固定,比如10个字符(5个汉字的长度)。HBase则采用了更加简单的数据模型,它把数据存储为未经解释的字符串,全部都是字符串。HBase与关系数据库的区别
数据操作:关系数据库中包含了丰富的操作,其中会涉及复杂的多表连接。比如我们在关系型数据库中有两张表,有一张是我们的成绩信息,有一张表是我们的寝室信息家庭信息等等。这两张表有一个相同的字段姓名,这样我们就可以通过这个相同的字段把两张表连接起来。HBase操作则不存在复杂的表与表之间的关系,只有简单的插入、查询、删除、清空等,因为HBase在设计上就避免了复杂的表和表之间的关系。所以HBase也就不支持复杂的条件查询,只能是通过行键查询。
存储模式:关系数据库是基于行模式存储的。我们说每一行就是一条记录。HBase是基于列存储的,每个列簇都由几个文件保存,不同列簇的文件是分离的。并且列簇中的列是可以动态增加的,而关系数据库需要一开始就设计好。除此之外,HBase可以自动切分数据,关系型数据库则需要我们人工切分数据。
数据索引:关系数据库通常可以针对不同列构建复杂的多个索引,以提高数据访问性能。HBase只有一个索引——行键,通过巧妙的设计,HBase中的所有访问方法,或者通过行键访问,或者通过行键扫描,从而使得整个系统不会慢下来。
可伸缩性:关系数据库很难实现横向扩展,纵向扩展的空间也比较有限。相反,HBase分布式数据库就是为了实现灵活的水平扩展而开发的,能够轻易地通过在集群中增加或者减少硬件数量来实现性能的伸缩。数据维护:在关系数据库中,更新操作会用必威体育精装版的当前值去替换记录中原来的旧值,旧值被覆盖后就不会存在。而在HBase中执行更新操作时,并不会删除数据旧的版本,而是生成一个新的版本,旧的版本仍然保留。
数据库的核心目的是实现数据的高效管理,传统关系数据库一度占据商业数据库应用的主流位置完备的关系理论基础事务管理机制的支持高效的查询优化机制
随着信息化浪潮和互联网应用的兴起,传统的关系型数据库在一些业务上开始呈现不足:无法满足海量数据的管理需求无法满足数据高并发的需求无法满足高可扩展性和高可用性的需求
NoSQL最初被理解为一味用新型数据库替代传统关系型数据库,但两者各有优缺点
文档评论(0)