没有合适的资源?快使用搜索试试~ 我知道了~
HBase概述——HBase的存储模型.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 137 浏览量
2022-07-11
00:05:18
上传
评论
收藏 319KB PDF 举报
温馨提示
试读
2页
HBase概述——HBase的存储模型.pdf 学习资料 复习资料 教学资源
资源推荐
资源详情
资源评论
1/2
HBase 概述——HBase 数据存储
HBase 概述——HBase 的存储模型
朱立
(北京信息职业技术学院)
摘要:HBase的存储模型体现为LSM树——Log-Structured Merge Tree。LSM 树存储引擎和
B 树存储引擎一样,同样支持增、删、读、改、顺序扫描操作。而且通过批量存储技术规避磁
盘随机写入问题。当然凡事有利有弊,和B+树相比,LSM 树牺牲了部分读性能,用来大幅提
高写性能。
关键词:HBase;存储模型;LSM树
HBase的存储模型:
LSM 思想:LSM 的基本思想是将修改的数据保存在内存,达到一定数量后再将修改的数据批量写入
磁盘,在写入的过程中与之前已经存在的数据做合并。同B 树存储模型一样,LSM 存储模型也支持增、
删、读、改以及顺序扫描操作。LSM 模型利用批量写入解决了随机写入的问题,虽然牺牲了部分读的性
能,但是大大提高了写的性能.
因为小树先写到内存中,为了防止内存数据丢失,写内存的同时需要暂时持久化到磁盘,对应了
HBase 的MemStore 和HLog
MemStore 上的树达到一定大小之后,需要Flush 到HRegion 磁盘中(一般是Hadoop DataNode),这
样MemStore 就变成了DataNode 上的磁盘文件StoreFile, HRegionServer 定期对DataNode 的数据做
merge 操作,彻底删除无效空间,多棵小树在这个时机合并成大树,来增强读性能。
MemStore的Flush过程:
在HBase 的写入过程中,首先追加到HLOG 上,来保证数据的可靠性,随后append 到MemStore
上,当MemStore 写满了之后会进行Flush 过程,Flush 过程中HBase 会开启一个新的MemStore 接收新
的写入,Flush 会产生一个新的HFile 到HDFS 上,当Hfile 数量和大小达到一定程度时,已经大大的影响
到了查询性能,随后会进行Compact 操作。
Compact过程:
随着MemStore 的不断Flush,在HDFS 上会形成越来越多的小文件,文件数量过多会大大的降低查
询效率,Compact 过程会尽可能的将它们合并成规模更少但是更大的文件
合并过程又分为minor compact 和major 的compact。
minor compact:主要是将小于一定阈值的文件合并成更大的文件。
major compact:主要是将所有的文件都合并成一个文件。
文件合并之后会大大的提高查询效率,但是由于合并过程中会读取全量的数据,这样会大量的占用
磁盘的IO,导致查询效率大幅下降,甚至不可用。
Split过程:
当一个Region 的大小达到一定程度的时候,会进行Region 的Split 过程,Split 过程中Region 会进
行下线操作,此时不响应任何请求,直到Split 过程结束。多列族且数据不均匀的情况会导致,大列族触
发了Split,尽管小列族的数据很小,但是依然会进行split 导致数据不均,同时大列族的flush 会带动小
列族的flush,导致反复的IO,十分影响效率,久而久之会严重的影响Scan 查询效率。
资源评论
努力搬砖的小王
- 粉丝: 16
- 资源: 7706
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功