大数据之HBase

举报
星辰大海眺望远方 发表于 2019/01/14 22:03:58 2019/01/14
【摘要】 HBase

HBase的定义

HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。

  • 适合于存储大表数据(表的规模可以达到数十亿行以及数百万列),并且对大表数据的读、写访问可以达到实时级别;

  •  利用Hadoop HDFS(Hadoop Distributed File System)作为其文件存储系统,提供实时读写的分布式数据库系统;  

  • 利用ZooKeeper作为协同服务。

Hbse在产品定位

  • HBase在FusionInsihgt当中与HDFS,ZooKeeper等组件皆为基础组件,HBase提供海量数据存储,Hive、Spark等组件也皆有基于HBase做上层分析的应用实践。

  • HBase作为一个高可靠性、高性能、面向列、可伸缩的分布式数据库,提供海量数据存储功能,用来解决关系型数据库在处理海量数据时的局限性。

HBase包含模块:

  • HMaster  

在HA模式下,包含主用Master和备用Master。

主用Master:负责HBase中RegionServer的管理,包括表的增删改查;RegionServer的负载均衡,Region分布调整;Region分裂以及分裂后的Region分配;RegionServer失效后的Region迁移等。

备用Master:当主用Master故障时,备用Master将取代主用Master对外提供服务。故障恢复后,原主用Master降为备用。

  • RegionServerH  

RegionServer负责提供表数据读写等服务,是HBase的数据处理和计算单元。

RegionServer一般与HDFS集群的DataNode部署在一起,实现数据的存储功能。

HBase协作组件:

  • ZooKeeper  

ZooKeeper为HBase集群中各进程提供分布式协作服务。各RegionServer将自己的信息注册到Zookeeper中,主用Master据此感知各个RegionServer的健康状态。

  • HDFS  

HDFS为HBase提供高可靠的文件存储服务,HBase的数据全部存储在HDFS中。

Hbase写流程

  • HBase可类比为一栋图书馆,其中RegionServer就是这栋图书馆中的某层,Region是某个类别的图书,相同类别的图书都存放在同一个Region中。  

  • 写流程:  

  • 客户端发起请求 -> 通过ZooKeeper寻找到meta表所在RegionServer -> meta表中记载着各个User Region信息(rowkey范围,所在RegionServer),通过meta表寻找所要写入的Region所在RegionServer -> 请求按RegionServer和Region打包发送到Region所在RegionServer,由该RegionServer具体处理数据写入。  

  • HBase:分布式NoSQL数据库,每条用户数据以KeyValue存放在HBase中。 

  •  HClient:用户数据与HBase的接口,负责数据分类,下发数据给Region。 

  • Region:数据存放的最小单元。  

  • RegionServer:负责管理多个Region,是Region的载体。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。