Hbase的架构和Hbase的关键字

Hbase的架构

hbase架构

组件包括:

client、zookeeper、hmaster
hregionserver、hlog、hregion、store、memstore、storefile、hfile

client:

hbase的客户端,包含访问hbase的接口(shell、java api)
client维护着一些cache来加快对hbase的访问,比如region的位置信息

zookeeper:

监控hmaster的状态,保证有且仅有一个active的hmaster,达到高可用集群
实时监控hregionserver的状态,将hregionserver的上下线信息实时通知hmaster
存储所有的hregion的寻址入口 --- root表在哪台服务器上
存储hbase的所有表信息(hbase的schema),包含有哪些表、每个表有哪些列簇column family

hmaster: hbase的老大

为hregionserver分配hregion(新建表等)
负责hregionserver的负载均衡
负责hregion的重新分配(hregionserver异常、hregion一分为二)
hdfs上的垃圾文件回收
处理schema的更新请求

hregionserver:hbase的小弟

hregionserver管理hmaster分配给他的hregion
处理client的io请求,并和hdfs交互
hregionserver负责切分在运行过程中变大的hregion

hlog:

对hbase的操作进行记录,使用WAL写数据优先写到hlog里,然后再写到memstore里,
以防数据丢失后可以进行回滚。

hregion:

hbase中分布式存储和负载均衡的最小单元,是表或者表的一部分。

store:

相当于一个列簇

memstore:

内存缓冲区,用于进行批量刷新数据到hdfs

hstorefile:

hbase中的数据以hfile的形式写入到hdfs中

各组件的数量关系

hmaster:hregionserver=1:n
hregionserver:hregion=1:n
hregionserver:hlog=1:1
hregion:store=1:n
store:memstore=1:1
store:hstorefile=1:n
hstorefile:hfile=1:1

Hbase的关键字

rowKey:行键(和mysql中的主键一样),不允许重复,有顺序
column family:列簇(列的集合)
column:列
timestamp:时间戳,默认当前时间,查询时默认显示最新的时间戳
versioned:版本号
cell:单元格

hbase的特点:
模式:无模式
数据类型:单一
多版本:每一个值都可以有多个版本
列式存储:
稀疏存储:如果key-value为null时,整个将不占存储空间

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值