SmallFS操作


功能简介

SmallFS新增小文件后台合并特性,能够自动发现系统中的小文件(通过文件大小阈值判断),在闲时进行合并,并把元数据外置到第三方KV系统来降低namenode压力,同时提供新的FileSystem接口,让用户能够透明地访问这些小文件。

新的FileSystem接口提供了丰富的文件操作功能,操作方式与HDFS完全相同,差别在于有些接口不支持或者部分支持。在编写SmallFS的API操作前,请先阅读SmallFS常用接口,充分了解SmallFileSystem是否支持所需要使用的API。

代码样例

使用SmallFS接口进行二次开发的时候,与HDFS重用的接口其二次开发时是一样的,可以直接参考HDFS的样例代码,如下所示:

  1. HDFS初始化
  2. 写文件
  3. 追加文件内容
  4. 读文件
  5. 删除文件

两者的差别在于访问SmallFS的时候需要额外进行配置,具体配置方式请查看编译并运行程序步骤 1章节的。

禁止的操作和约束

  • 使用SmallFS接口进行二次开发的时候,当使用与HDFS不重用的接口进行二次开发时需要参照SmallFSFileSystem这个类。
  • 小文件不支持Colocation。
  • 小文件不支持设置存储策略。
  • 每个小文件目录下有一个名为“.sfs”的目录,这个目录用于存放合并后的大文件,禁止直接操作这个目录,否则数据可能会丢失。
  • 尽量不要使用HDFS接口操作小文件目录,否则易发生数据丢失的情况。

results matching ""

    No results matching ""