HBase学习总结

本文为HBase学习总结

一、基础

1)基本概念
HBase是一个在HDFS上开发的面向列的分布式数据库,可实时地随机访问

所有对HBase表的访问都需要通过表的主键,行中的列被分成"列族"(column family)。物理上,所有的列族成员都一起存放在文件系统中,同一个列族的所有成员具有相同的前缀

HBase依赖于ZooKeeper,ZooKeeper集合体负责管理诸如hbase:meta目录表的位置以及当前集群主控机地址等重要信息。如果区域分配过程中有服务器崩溃,ZooKeeper可以进行分配的协调

2)region
HBase自动把表水平划分成区域(region),每个region由表中行的子集构成,每个region由它所属于的表、它所包含的第一行及最后一行(不包含)来表示。一开始,一个表只有一个region,但是随着region的增大,超出设定的大小阈值,便会在某行的边界上把表分成两个大小基本相同的新region。在第一次划分之前,所有加载的数据都存放在原始区域所在的那台服务器上。随着表变大,region个数也会增加。region是在HBase集群上分布数据的最小单位。用这种方式,一个过大的表会被放到服务器集群上,其中每个节点都负责管理表所有region的一个子集。表的加载也是使用这种方法把数据分布到各个节点。在线的所有region按次序排列就构成了表的所有内容

3)master,regionserver
HBase用一个master节点协调管理一个或多个regionserver从属机。HBase的master负责启动(bootstrap)一个全新的安装,把region分配给注册的regionserver,恢复regionserver的故障。regionserver负责零个或多个区域的管理以及相应客户端的读/写请求,还负责区域的划分并通知master有新的子区域(daughter region),这样,主控机就可以把父区域设为离线,并用子区域替换父区域

4)宽表
在HBase中,所有访问都是通过主键的,并且它可以以极小的开销管理较宽的稀疏表,因此HBase表可以依据业务场景聚合多个单表为一个宽表,方便进行数据的查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值