hbase快速入门之---系统架构
来源:互联网 发布:2017网络新歌排行榜 编辑:程序博客网 时间:2024/05/23 20:58
ØClient
HBase Client使用HBase的RPC机制与HMaster和HRegionServer进行通信,对于管理类操作,Client与HMaster进行RPC;对于数据读写类操作,Client与HRegionServer进行RPC
ØZookeeper
Zookeeper Quorum中除了存储了-ROOT-表的地址和HMaster的地址,HRegionServer也会把自己以Ephemeral方式注册到Zookeeper中,使得HMaster可以随时感知到各个HRegionServer的健康状态。此外,Zookeeper也避免了HMaster的单点问题。
ØHmaster
HMaster没有单点问题,HBase中可以启动多个HMaster,通过Zookeeper的Master Election机制保证总有一个Master运行。
HMaster在功能上主要负责Table和Region的管理工作:
1.管理用户对Table的增、删、改、查操作
2.管理HRegionServer的负载均衡,调整Region分布
3.在Region Split后,负责新Region的分配
4.在HRegionServer停机后,负责失效HRegionServer上的Regions迁移
ØHRegionServer主要负责响应用户I/O请求,向HDFS文件系统中读写数据,是HBase中最核心的模块。
ØHRegionServer内部管理了一系列HRegion对象,每个HRegion对应了Table中的一个Region,HRegion中由多个HStore组成。每个HStore对应了Table中的一个Column Family的存储,可以看出每个Column Family其实就是一个集中的存储单元,因此最好将具备共同IO特性的column放在一个Column Family中,这样最高效。
ØHStore存储是 HBase存储的核心了,其中由两部分组成,一部分是MemStore,一部分是StoreFiles。
ØMemStore是Sorted Memory Buffer,用户写入的数据首先会放入 MemStore,当MemStore满了以后会Flush成一个StoreFile(底层实现是 HFile)
Ø当StoreFile文件数量增长到一定阈值,会触发 Compact合并操作,将多个StoreFiles合并成一个 StoreFile,合并过程中会进行版本合并和数据删除,因此可以看出 HBase其实只有增加数据,所有的更新和删除操作都是在后续的compact过程中进行的,这使得用户的写操作只要进入内存中就可以立即返回,保证了HBase I/O的高性能。
Ø当StoreFiles Compact后,会逐步形成越来越大的StoreFile,当单个StoreFile大小超过一定阈值后,会触发 Split操作,同时把当前 Region Split成2个Region,父 Region会下线,新 Split出的2个孩子Region会被HMaster分配到相应的HRegionServer 上,使得原先 1个Region的压力得以分流到 2个Region上。
Ø下图描述了Compaction和Split的过程。
阅读全文
0 0
- hbase快速入门之---系统架构
- Hadoop之HBase快速入门
- hbase快速入门之hTable
- hbase快速入门之---简介
- hbase快速入门之---权限
- Hbase入门之:原理、基本概念与架构
- Hbase入门之:原理、基本概念与架构
- hbase快速入门之---逻辑视图
- hbase快速入门之---物理存储
- hbase 快速入门之---HFILE数据格式
- hbase快速入门之---region定位过程
- hbase快速入门之---参数调优
- hbase快速入门--hTable
- 【转载】HBase系统架构
- HBase 系统架构
- HBase 系统架构
- HBase 系统架构
- HBase 系统架构
- js实现深拷贝
- vue-router 之动态路由
- 芝麻信用行业关注名单风险标签对照表SQL---福利大家!
- ubuntu设置别名
- 文件的简单加密与解密(不安全)
- hbase快速入门之---系统架构
- 初学者---Android全屏截图的方法,返回Bitmap并且保存在SD卡上
- Python3 Day2 循环
- java--IO--目录
- 做机梦,
- 兄弟连学python》》》元组操作
- scrapy爬取酒店信息
- 逻辑英语_1
- VTK 表面重建-三角剖分