您当前的位置: 首页 >  hbase

宝哥大数据

暂无认证

  • 2浏览

    0关注

    1029博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

HBASE简介

宝哥大数据 发布时间:2016-12-04 11:38:31 ,浏览量:2

学习自:https://www.shiyanlou.com/courses/running

1 Hadoop EcoSystem中的各层系统:

这里写图片描述 其中   HBase位于结构化存储层,   Hadoop HDFS为HBase提供了高可靠性的底层存储支持,   Hadoop MapReduce为HBase提供了高性能的计算能力,   Zookeeper为HBase提供了稳定服务和failover机制。

此外   Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。   Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。

2.HBASE历史

  Apache HBase最初是Powerset公司为了处理自然语言搜索产生的海量数据而开展的项目。 这里写图片描述

3. HBASE数据类型

这里写图片描述

  • 行健(Row Key):表的主键,表中的记录默认按照行健升序排序
  • 时间戳(Timestamp):每次数据操作对应的时间戳,可以看作是数据的版本号
  • 列族(Column Family):表在水平方向有一个或者多个列族组成,一个列族中可以由任意多个列组成,列族支持动态扩展,无需预先定义列的数量以及类型,所有列均以二进制格式存储,用户需要自行进行类型转换。所有的列族成员的前缀是相同的,例如“abc:a1”和“abc:a2”两个列都属于abc这个列族。
  • 表和区域(Table&Region):当表随着记录数不断增加而变大后,会逐渐分裂成多份,成为区域,一个区域是对表的水平划分,不同的区域会被Master分配给相应的RegionServer进行管理
  • 单元格(Cell):表存储数据的单元。由{行健,列(列族:标签),时间戳}唯一确定,其中的数据是没有类型的,以二进制的形式存储。
4.HBASE架构

这里写图片描述 如上图所示,HBase架构中只有一个Master节点,称HMaster,还有多台RegionServer成为HRegionServer,每个RegionServer包含多个Region。

  • HBase访问接口:Java,REST,Thrift等
  • Master:集群的管理服务器,为RegionServer分配Region,负责RegionServer的负载均衡,处理schema更新请求
  • RegionServer:管理HBase的数据存储,维护Region,处理IO请求。
  • Zookeeper:保证集群的高可用性、存储Region的寻址入口,并实时监控RegionServer的状态,存储HBase的Schema。

可以看到,client访问hbase上数据的过程并不需要Master参与(寻址访问Zookeeper和RegionServer,数据读写访问RegionServer),Master仅仅维护Table和Region的元数据信息,负载很低。

5. HBase存储格式

HBase中的所有数据文件都存储在Hadoop HDFS文件系统上,主要包括上述提出的两种文件类型:

  • HFile, HBase中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装,即StoreFile底层就是HFile
  • HLogFile,HBase中WAL(Write Ahead Log) 的存储格式,物理上是Hadoop的Sequence File
6.应用场景

这里写图片描述

关注
打赏
1587549273
查看更多评论
立即登录/注册

微信扫码登录

0.0375s