黑马程序员技术交流社区

标题: 【上海校区】Hadoop学习系列笔记(七):关于HBase [打印本页]

作者: wuqiong    时间: 2018-7-14 09:00
标题: 【上海校区】Hadoop学习系列笔记(七):关于HBase

HBase是一个在HDFS上开发的面向列的分布式数据库,适合实时地随机访问超大规模数据集。

HBase自底向上进行构建,能够简单地通过增加节点来达到线性扩展。HBase不是关系型数据库,不支持SQL。

概念:

应用把数据存放在带标签的表中,表由行和列组合成能单元格数据的插入时间戳为数据的版本。行的键和单元格内容是字节数组(字符串)。表中的行根据行的键值进行排序,所有对表的访问都要通过表的主键。行中的列被分为了“列族”,同一个列族的所有成员具有相同的前缀。物理上,所有的列族成员都一起存放在文件系统中,所以更准确的说法是HBase是一个面向列族的存储器。

HBase自动把表划分成大小基本相同的“区域”,每个区域由表中行的子集构成。随着表变大,区域的个数也会增加。区域是在HBase集群上分布数据的最小单位。用这种方式,一个因为太大而无法放在单台服务器上的表会被放到服务器集群上,其中每个节点都负责管理表所有区域的一个子集。表的加载也是使用这种方法把数据分布到各个节点。在线的所有区域按次序排列就构成了表的所有内容。

如HDFS和MapReduce由客户端、从属机(slave)和协调主控机(master)(即HDFS的namenode和datanode,MapReduce的jobtracker和tasktracker)组成,HBase也采用相同的模型,用一个master节点协调管理一个或多个regionserver从属机。

HBase主控机把区域分配给注册的regionserver,恢复regionserver的故障。regionserver负责零个或者多个区域的管理及响应客户端的读写请求,还负责区域的划分并通知HBase master有了新的子区域,这样主控机就可以把父区域设为离线,并用子区域替换父区域。HBase依赖于ZooKeeper。


相关博文:

编程实战理解Hbase:图文结合

Hbase系列总结:HBase系列博文

Hbase基本操作:怎删改查



作者: wuqiong    时间: 2018-7-15 10:16

作者: 不二晨    时间: 2018-7-15 11:43
优秀
作者: 小影姐姐    时间: 2018-7-17 17:05

作者: 小影姐姐    时间: 2018-7-18 10:45
牛牛牛!
作者: 梦缠绕的时候    时间: 2018-7-18 15:13

作者: 不二晨    时间: 2018-7-19 13:36
优秀,加油
作者: 吴琼老师    时间: 2018-7-19 16:55





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2