HBase 2.0+ 中的中型对象(MOB)存储指南
需积分: 7 22 浏览量
更新于2024-09-09
收藏 26KB DOCX 举报
"HBase MOB用户指南提供了关于如何在HBase中启用和配置Medium Objects (MOB) 功能的详细步骤。MOB是HBase针对中等大小对象优化存储的一种方式,尤其适合存储如图像、文档等二进制数据。由于大数值(如10MB)处理时会导致写放大的问题,影响性能,因此引入了MOB特性。HBase 2.0及更高版本支持MOB功能,启用它需要使用HFile版本3,并在表中声明MOB启用的列族。客户端无需任何改动即可使用此功能。"
正文:
HBase MOB (Medium Object Blob) 是一种针对HBase中的中等大小对象进行高效存储的机制。在传统的HBase读写路径中,当处理超过100KB大小的值时,性能可能下降,因为分裂和压缩操作会引发写放大。为了解决这个问题,HBase从2.0版本开始引入了MOB特性。
1. 启用HBase MOB:
要启用MOB功能,首先必须确保HBase使用HFile版本3。这需要修改`hbase-site.xml`配置文件,添加如下属性:
```xml
<property>
<name>hbase.hfile.format.version</name>
<value>3</value>
</property>
```
2. 配置MOB列族:
- 使用HBase Shell:可以使用`ALTER`命令在已存在的表或创建新表时启用MOB功能,例如:
```bash
alter 'table_name', {NAME => 'column_family', VERSIONS => '1', COMPRESSION => 'NONE', BLOOMFILTER => 'ROW', IN_MEMORY => 'false', MobEnabled => 'true'}
```
- 使用Java API:在创建表或修改列族配置时,设置`MobEnabled`属性为`true`。
3. 启用和配置MOB文件缓存:
编辑`hbase-site.xml`,添加以下属性以启用MOB文件缓存:
```xml
<property>
<name>hbase.mob.file.cache.size</name>
<value>100000000</value>
</property>
```
这个值表示缓存的MOB文件大小,默认单位是字节。
4. MOB文件管理:
MOB功能引入了一种新的读写路径,包括两种清理和压缩MOB文件的方式:
- 过期MOB文件清理器(Expired Mob File Cleaner):该组件负责清理已达到生命周期(TTL)的MOB文件。
- 压缩:MOB文件会被定期合并和压缩,以减少磁盘空间占用并提高读取效率。
5. 其他考虑:
- MOB阈值:可以通过`hbase.mob阈值`配置设置触发将值存储为MOB的大小门槛。
- MOB索引:MOB功能依赖于一个索引来快速定位MOB值,这个索引默认是基于时间戳的。
通过启用和正确配置HBase MOB,可以显著改善对大型数据值的处理,减少写放大,提高整体系统性能,尤其对于存储大量中等大小对象的场景。理解并熟练掌握这些配置和管理策略是优化HBase性能的关键。
2018-04-15 上传
2017-02-19 上传
2023-10-30 上传
2023-05-10 上传
2023-06-02 上传
2023-07-27 上传
2023-06-11 上传
2023-06-03 上传
2023-08-05 上传
2023-06-02 上传
francisdu
- 粉丝: 0
- 资源: 1
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全