HBase相关介绍

HBase介绍

HBase - Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可以在廉价的PC SERVER上搭建大规模结构化数据存储的集群。

HBase利用Hadoop HDFS 作为其文件存储系统, 利用Hadoop Mapreduce来处理HBase中的海量数据,利用Zookeeper作为协调工具。

可以单独运行,也可以与mapreduce关联使用,且必须依赖zookeeper

2
什么情况下使用HBase(一定程度上弥补了HDFS缺陷)
  • 需要对数据进行随机读操作或者随机写操作
  • 大数据量高并发操作,比如每秒对PB级数据进行上千次操作
  • 读写访问均是非常简单操作
逻辑数据模型
4 4 5

行键具有唯一性;

列没有必要提前写好

没有写数据的区域不会占据物理空间

6

行键:

字符串、整数、二进制串甚至串行化的结构都可以作为行键

表按照行键的“逐字节排序”顺序对行进行有序化处理

列族:

表中至少有一个列族

“族:标签”其中,族和标签都可为任意形式的串

物理上将通“族”数据存储在一起

物理数据模型
7
数据存储
8 9
系统架构

HBase系统架构

角色作用
client包含访问hbase的接口,client维护者一些cache来加快对hbase的访问,比如region的位置信息
zookeeper保证任何时候,集群中只有一个runningmaster;存贮所有region的寻址入口;实时监控region server的状态,将其上下线信息实时通知给master;存储hbase的schema,包括元数据包括有哪些table
master可以启动多个master,通过zookeeper的master election机制保证总有一个master运行;为regionserver分配region;负责region server的负载均衡;发现失效的region server 并重新分配其上的region
region server维护master分配给它region,处理region的IO请求;负责切分运行过程中变得过大的region
region定位
10

ROOT表存储了META表所在region的位置,root表只有一个region;

zookeeper file记录了 -ROOT表的region位置;

META表存储所有用户表的region的位置;

Table在行的方向上分割为多个HRegion,一个region由[startkey,eendkey)表示,每个HRegion分散在不同的regionserver中;

HBase访问接口
  • Native Java API
  • HBase shell
  • Thrift Gateway
  • REST Gateway
  • Pig& Hive
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值