HBase的原理和架构是什么

技术HBase的原理和架构是什么这篇文章主要为大家展示了“HBase的原理和架构是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HBase的原理和架构是什么”这篇文章吧。

本文主要向您展示“HBase的原理和架构是什么”。内容简单易懂,条理清晰。希望能帮你解开疑惑。让边肖带领大家学习《什么是HBase的原理和架构》一文。

一、逻辑存储模型

HBase以表格的形式存储数据,表格由行和列组成。柱分为几个柱族,

RowKey:Hbase使用RowKey来唯一区分某一行的数据。如图' rk001 '所示

列:Hbase将数据的存储按列族划分,列族下可以包含任意数量的列,实现灵活的数据访问。Hbase中的列越多越好。官方建议列数应小于或等于3。我们使用的场景通常是柱族。图中的“CF1”列族包含以下两列:“名称”和“别名”。

TimeStamp: Timestamp对于Hbase来说非常重要,因为它是实现Hbase多版本的关键。在Hbase中使用不同的timestame来标识对应于同一rowkey行的不同版本的数据。

单元格:在Hbase中由行键和列标识的存储单元称为单元格。每个单元格保存相同数据的多个版本。按版本时间戳索引。

二、物理存储模型

在HBase中,数据以表格的形式存储,表格由许多行组成,每行由行键和一个或多个列值组成。我们可以这样想。当表中有很多行时,我们根据一定的规则将表分成很多部分(例如,每500行)。那么拆分后的每个部分就是所谓的HRegion,这个HRegion作为一个整体被HMaster分配给一个RegionServer。这里可以理解为:把HMaster想象成一个老板,他把Hregions分配给某个服务器。因此,一个表被分成多个区域,并可能被分配给不同的区域服务器。我们刚才说HRegion是一个整体,也就是说不能再进一步划分了,它必须在一个RegionServer上。

三、总体架构

糖化血红蛋白酶的总体结构图如下:

HBase的原理和架构是什么

包括HMaster、HRegionSever、HRegion、HLog、Store、MemStore、StoreFile、HFile等。

HBase底层依托HDFS,HDFS运营通过DFS Cilent进行。

HMaster负责将HRegions分配给hregionserver,每个hregionserver可以包含多个hregonins,多个hregonins共享HLog,用于灾难恢复。

每个HRegion由一个或多个stores、Store对应表的列族组成,每个Store包含其对应的MemStore和一个或多个Stories(这是实际数据存储文件HFile的轻量级封装)。MemStore在内存中,保存修改后的数据。当MemStore中的数据被写入文件时,它就是故事。

3.1 HMaster

HMaster的主要功能是:

将区域分配给某个区域服务器。

当区域服务器关闭时,HMaster可以将这台机器上的区域迁移到活动的区域服务器。

负载平衡服务器。

回收垃圾文件(无效日志等)。)通过h dfs的dfs客户端界面

注意:HMaster没有单点问题,在HBase中可以启动多个HMaster。总有一位大师通过动物园管理员的大师选举机制。

3.2 HRegionServer

(1)维护HMaster分配给它的hregions,并处理这些hregIOns的io请求,也就是说客户端直接与HRegionServer进行处理。(从图中也可以看出)

负责分割操作过程中变得过大的区域。

3.3 HRegion

让我们来看看HRegion的结构:

每个区域由几个商店组成,每个商店拥有一个列族。如果表有多个列族,则有多个存储。每个存储由一个内存存储和几个存储文件组成。MemStore是内存中存储的内容,是写入文件后的storefile。基础存储文件以HFile格式保存。

3.4 HLog

HLog (wallog): wal表示提前写日志,用于灾难恢复。HLOG记录数据的变化,包括序列号和实际数据,因此一旦区域服务器关闭,它就可以从日志中回滚尚未持久化的数据。

3.5 HFile

糖化血红蛋白酶的数据最终以HFile的形式存储在HDFS,糖化血红蛋白酶的HFile有自己的格式。

以上就是文章《HBase的原理和架构是什么》的全部内容,感谢阅读!相信大家都有一定的了解,希望分享的内容对大家有所帮助。想了解更多知识,请关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/138993.html

(0)

相关推荐

  • Server 2005降级到2000的正确操作步骤是什么

    技术Server 2005降级到2000的正确操作步骤是什么Server 2005降级到2000的正确操作步骤是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个

    攻略 2021年12月1日
  • hbase 单机+伪分布环境搭建学习-1

    技术hbase 单机+伪分布环境搭建学习-1 hbase 单机+伪分布环境搭建学习-11、单机模式:
    (1)编辑hbase-env.shuser@EBJ1023.local:/usr/local/flu

    礼包 2021年12月22日
  • html5游戏加入广告(html5广告动画)

    技术html5广告是什么本篇内容主要讲解“html5广告是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“html5广告是什么”吧! html5

    攻略 2021年12月23日
  • solr全文检索(solr搜索)

    技术solr4.7如何建立索引本篇内容主要讲解“solr4.7如何建立索引”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“solr4.7如何建立索引”吧!solr的建立索引的方

    攻略 2021年12月22日
  • spark的功能和优缺点(spark具有哪些特点)

    技术Spark的性能特点有哪些本篇内容主要讲解“Spark的性能特点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Spark的性能特点有哪些”吧!Spark:Apach

    攻略 2021年12月14日
  • 利用PHP使用Redis常见的使用场景有哪些

    技术利用PHP使用Redis常见的使用场景有哪些这篇文章主要为大家展示了“利用PHP使用Redis常见的使用场景有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“利用PHP

    攻略 2021年11月25日