文档首页 > > 开发指南(适用于2.x及之前)> HBase应用开发> 更多信息> 配置HBase文件存储

配置HBase文件存储

分享
更新时间:2020/03/16 GMT+08:00

使用条件

集群版本小于MRS 2.0.0。

使用场景

HBase文件存储模块(HBase FileStream,简称HFS)是HBase的独立模块,它作为对HBase与HDFS接口的封装,应用在MRS的上层应用,为上层应用提供文件的存储、读取、删除等功能。

在Hadoop生态系统中,无论是HDFS,还是HBase,在面对海量文件存储的时候,在某些场景下,都会存在一些很难解决的问题:

  • 如果把海量小文件直接保存在HDFS中,会给NameNode带来极大的压力。
  • 由于HBase接口以及内部机制的原因,一些较大的文件也不适合直接保存到HBase中。

HFS的出现,就是为了解决需要在Hadoop中存储海量小文件,同时也要存储一些大文件的混合场景。简单来说,就是在HBase表中,需要存放大量的小文件(10MB以下),同时又需要存放一些比较大的文件(10MB以上)。

HFS为以上场景提供了统一的操作接口,这些操作接口与HBase的函数接口类似。必须在HBase的配置参数“hbase.coprocessor.master.classes”中增加一个值:“org.apache.hadoop.hbase.filestream.coprocessor.FileStreamMasterObserver”

  • 如果只有小文件,确定不会有大文件的场景下,建议使用HBase的原始接口进行操作。
  • HFS接口需要同时对HBase和HDFS进行操作,所以客户端用户需要同时拥有这两个组件的操作权限。
  • 直接存放在HDFS中的大文件,HFS在存储时会加入一些元数据信息,所以存储的文件不是直接等于原文件的。不能直接从HDFS中移动出来使用,而需要用HFS的接口进行读取。
  • 使用HFS接口存储在HDFS中的数据,暂不支持备份与容灾。

操作步骤

  1. 登录MRS Manager
  2. 单击服务管理 > HBase > 服务配置“参数类别”类型选择“全部配置”,然后在左边窗口选择HMaster > 系统
  3. “hbase.coprocessor.master.classes”配置项中增加值“org.apache.hadoop.hbase.filestream.coprocessor.FileStreamMasterObserver”
  4. 单击“保存配置”,在弹出窗口中勾选“重新启动受影响的服务或实例。”选项,然后单击“是”,重启HBase服务。
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问