• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

HBase系统结构怎么理解?

2019-05-19 发表
  • 0关注
  • 0收藏 832浏览
粉丝:23人 关注:4人

问题描述

QHBase系统结构怎么理解?

解决方法

A

HBase系统架构:ClientZooKeeperHMasterHRegionServerHRegionHStoreHLogHDFS等部件组成。

l  Client

n  使用HBase RPC机制与HMasterHRegionServer进行通信;

n  ClientHMaster进行通信进行管理类操作;

n  ClientHRegionServer进行数据读写类操作。

l  ZooKeeper

n  Zookeeper Quorum存储.meta.表地址、HMaster地址;

n  HRegionServer把自己以Ephedral方式注册到Zookeeper中,HMaster随时感知各个HRegionServer的健康状况;

n  Zookeeper避免HMaster单点问题。

l  HMaster

n  HMaster没有单点问题,HBase中可以启动多个HMaster,通过ZookeeperMaster Election机制保证总有一个Master在运行

n  主要负责TableRegion的管理工作:

n  管理用户对表的增删改查操作;

n  管理HRegionServer的负载均衡,调整Region分布;

n  Region Split后,负责新Region的分布;

n  HRegionServer停机后,负责失效HRegionServerRegion迁移。

l  HRegionServer

n  HBase中最核心的模块,主要负责响应用户I/O请求,向HDFS文件系统中读写数据。

n  HRegionServer管理一些列HRegion对象;

n  每个HRegion对应Table中一个RegionHRegion由多个HStore组成;

n  每个HStore对应Table中一个Column Family的存储;

n  Column Family就是一个集中的存储单元,故将具有相同IO特性的Column放在一个Column Family会更高效。

l  Region

n  Table随着记录数不断增加而变大后,会逐渐分裂成多份splits,成为regions,一个region[startkey,endkey)表示,不同的region会被Master分配给相应的RegionServer进行管理。

l  HStroe

n  HBase存储的核心。由MemStoreStoreFile组成,MemStoreSorted Memory Buffer

l  HLog

n  在分布式系统环境中,无法避免系统出错或者宕机,一旦HRegionServer意外退出,MemStore中的内存数据就会丢失,为防止数据丢失,引入了HLog

n  每次用户操作写入Memstore的同时,也会写一份数据到HLog文件,HLog文件定期会滚动出新,并删除旧的文件(已持久化到StoreFile中的数据)。当HRegionServer意外终止后,HMaster会通过Zookeeper感知,HMaster首先处理遗留的HLog文件,将不同regionlog数据拆分,分别放到相应region目录下,然后再将失效的region重新分配,领取到这些regionHRegionServerLoad Region的过程中,会发现有历史HLog需要处理,因此会Replay HLog中的数据到MemStore中,然后flushStoreFiles,完成数据恢复。

l  HDFS

n  HDFS是一个分布式文件系统。它通过将一个大的文件划分成一个个固定大小的Block来实现分布式存储。每一个Block的默认大小为128MB。每一个Block都存在多个备份,并且被部署在不同的数据节点上,来保障数据的安全。目前,HBase的所有底层数据都以文件的形式交由HDFS来存储。HBase一侧本身不固化保存数据信息。

n  RegionServerDataNode一般会放在相同的Server上实现数据的本地化。

该案例对您是否有帮助:

您的评价:1

若您有关于案例的建议,请反馈:

作者在2019-06-08对此案例进行了修订
0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作