设为首页 收藏本站
查看: 781|回复: 0

[经验分享] Hadoop第11周练习—HBase基础知识

[复制链接]
累计签到:10 天
连续签到:1 天
发表于 2015-7-14 10:22:08 | 显示全部楼层 |阅读模式
1 书面作业1:数据即日志... 3
1.1     书面作业1内容... 3
1.2     回答... 3
2 书面作业2:HBase合并过程... 3
2.1     书面作业2内容... 3
2.2     回答... 4
3 书面作业3:HBase一致性... 4
3.1     书面作业3内容... 4
3.2    回答... 4

1 书面作业1:数据即日志
1.1 书面作业1内容
我们常说HBase是“数据即日志”的数据库,它是怎样修改和删除数据的?和Oracle这类传统的RDBMS有什么区别?
1.2 回答
HBase通过插入数据进行修改和删除,修改是根据时间戳完成的,删除时在插入的行上增加了删除标志。HBase的操作都是插入数据、顺序写,这点和关系型数据库中的写日志很相似,所以说HBase数据即日志。
HBase和Oracle传统的RDBMS区别:
1. 修改和删除数据方式不一样:在关系型数据做修改和删除数据时不会增加新的数据记录,直接对老数据进行修改或删除,一旦完成修改或删除,则原始数据发生变化。HBase HBase通过插入数据进行修改和删除。
2. 数据存储方式不一样: HBase是列式存储,传统Oracle关系型数据库是行式存储。HBase在做数据分析等场景比关系型数据库要好,数据分析时通常只需要读取部分列,HBase可以只读取这些列,而关系型数据库就需要全部列
3.  寻址方式不同:HBase的性能瓶颈在硬盘传输,而关系型数据库的瓶颈在硬盘寻道时间
4. 压缩效率不同:HBase等列式数据库相近的列里存的数据格式都很相近的,可以大幅度的压缩。所以压缩率会很高。行式数据库的压缩就没那么高,这样列式数据库不但节省了硬盘空间,也减少了io。但是对于联机事务系统的随机读写,还是行式数据库更合适。
2 书面作业2:HBase合并过程
2.1 书面作业2内容
HBase合并storefile的原因是什么?在合并的过程中会做什么操作?如果在合并过程中恰好有涉及到有关storefile的查询发生,会发生什么情况(这个问题需要自行研究)?
2.2 回答
HBase合并Storefile的原因是由于HBase持久化数据保存在HDFS造成的,HDFS不擅长处理小文件,所以需要对Storefile进行合并。
HBase合并时做了两件事,第一删除有删除标记的数据和过期的旧版本数据,第二将多个小Storefile文件合并成一个大Storefile文件
如果在合并过程中恰好有涉及到有关Storefile查询发生,HBase先是把小Storefile加载到内存中用于用户在内存中检索相关数据,在内存中建立一个独立镜像备份专门提供查询,当合并完成后撤销内存空间中的镜像。
3 书面作业3:HBase一致性
3.1 书面作业3内容
HBase具有怎样的一致性水平?
3.2 回答
HBase是最终一致性的系统,因为HBase是架构在Hadoop之上的数据库,“错误是常态”是Hadoop座右铭,在CAP理论中HBase为了满足可用性和分区容错性牺牲了一部分的数据一致性。
举例:我们要进行电信的指标汇总,并且把汇总结果冗余三份分布在3个datanode中,我们可以设置阀值只要有2份结果保存了我们就可以继续做下面的操作,在一定时间范围内允许第3份结果稍后一致性同步,这就是最终一致性。所以说hbase是适用于AP理论的系统,最终一致性也满足分布式集群的特点。

注:
CAP理论是由EricBrewer教授提出的,在设计和部署分布式应用的时候,存在三个核心的系统需求,这个三个需求之间存在一定的特殊关系。三个需求如下:
C: Consistency一致性
A: Availability可用性
P:Partition Tolerance分区容错性
CAP理论的核心是:一个分布式系统不可能同时很好的满足一致性,可用性和分区容错性这三个需求,最多只能同时较好的满足两个。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-86588-1-1.html 上篇帖子: Hadoop+HBase+PIG 环境搭好了,纪念一下 下篇帖子: hadoop loadBalance源码分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表