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)

相关推荐

  • 如何通过Python爬取网页抖音热门视频

    技术如何通过Python爬取网页抖音热门视频如何通过Python爬取网页抖音热门视频,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前言抖音短视频相信大家都听

    攻略 2021年10月26日
  • 抖音刷赞推广平台便宜,全网最便宜的平台!

    技术抖音刷赞推广平台便宜,全网最便宜的平台!抖音快速涨粉方法抖音无疑是目前新媒体里面涨粉最容易,涨粉最快的平台了。前有成都小甜甜一夜涨粉500万,后有灵魂当铺一天涨粉75万。这种涨粉速度在其他平台是想都不敢想象的。不过,

    测评 2021年11月9日
  • c#如何实现DataGridView分页

    技术c#如何实现DataGridView分页这篇文章主要介绍了c#如何实现DataGridView分页,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。由于项

    攻略 2021年11月23日
  • 数据库中的记录类型判断非空的办法是什么

    技术数据库中的记录类型判断非空的办法是什么本篇内容主要讲解“数据库中的记录类型判断非空的办法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库中的记录类型判断非空的办

    攻略 2021年11月9日
  • 一学期是一年还是半年,一学年、是指一学期、还是一年

    技术一学期是一年还是半年,一学年、是指一学期、还是一年一学年是指一年一学期是一年还是半年。 一学年即从当年9月1日到次年的8月31日,暑假是学年分界线,一学年分为2个学期,寒假是学期分界线。 学校的教学年度。一般从秋季始

    生活 2021年10月29日
  • 鲁滨逊是什么样的人,鲁滨逊是一个怎样的人?举例说明

    技术鲁滨逊是什么样的人,鲁滨逊是一个怎样的人?举例说明鲁滨逊漂流记》 鲁滨逊这个人物是世界文学中第一个资产阶级正面典型.他出生于一个有着幸福生活的中产阶层生活的家庭,原本他可以安乐地过完一生,可是从小便想遨游四海的念头促

    生活 2021年10月25日