一种分布式文件系统小文件写缓存优化的方法与流程

文档序号:12550881阅读:366来源:国知局

本发明涉及计算机存储领域,具体地说是一种分布式文件系统小文件写缓存优化的方法。



背景技术:

随着计算机技术的快速发展,各种形式的信息数据量越来越大,PB级别的海量数据存储变得越来越重要。传统意义的文件系统已不能满足现有应用的大容量、高可靠性、高性能等要求,为满足这些新的要求,分布式文件系统得到了广泛的重视。

现有的分布式文件系统的研究主要分为元数据和实际数据存储分开管理,通过元数据与实际数据的隔离实现了分布式文件系统的容量动态增减、性能现行扩展。

然而,电子商务、移动通信、传感器网络等各种应用产生的数据,不仅存储容量巨大,而且还具有数据类型繁多、数据大小变化大、流动快等显著特点,往往能够产生千万级、亿级甚至十亿、百亿级的海量小文件。

在进行大文件写入时,可以在客户端进行数据合并来提高刷新效率,而小文件内容则无法有效合并,因此急需发明一种小文件写入缓存优化的方法。



技术实现要素:

本发明的技术任务是提供一种分布式文件系统小文件写缓存优化的方法。

本发明的技术任务是按以下方式实现的,一种分布式文件系统小文件写缓存优化的方法,具体方法步骤如下:

S1、挂载文件系统,指定目录打开缓存功能;

S2、将所写入的数据保存到客户端缓存;

S3、缓存管理模块按照inode进行脏数据区分管理;

S4、缓存刷新模块定期刷新脏数据到后端存储池。

进一步,优选的方法为,所述的S3缓存管理模块按照inode进行脏数据区分管理的具体步骤为:

在客户端每个inode里面新增一个索引,用来管理属于当前inode的脏数据,在客户端进行小文件写入时将所写入的数据关联到新增的索引上面。

进一步,优选的方法为,所述的S4中缓存刷新的具体步骤为:

增加定时器,用于定期触发脏数据刷新操作;

在文件写入完成后关闭文件句柄,然后将待刷新inode放至任务队列,每一次只刷新特定数量的inode,刷新的数据内容必须是与inode相关联;以使得每一次刷新操作可以批量刷新inode的同时刷新与该inode关联的脏数据。

进一步,优选的方法为,所述的缓存功能的打开与关闭功能,以目录为操作的基本单位。

进一步,优选的方法为,所述的目录下的子目录继承了缓存功能的打开与关闭功能。

一种分布式文件系统小文件写缓存优化的装置,包括客户端、缓存功能开启模块、缓存管理模块和缓存刷新模块;

其中客户端,客户端缓存用于保存写入的数据;

缓存功能开启模块,以目录为操作的基本单位,用于缓存功能的打开与关闭;

缓存管理模块,用于按照inode进行脏数据区分管理;

缓存刷新模块,用于实现批量刷新inode,刷新的数据内容与inode相关联。

进一步,优选的结构为,所述的缓存刷新模块包括定时器,用于批量inode的延迟刷新。

本发明是小文件写入时,将数据内容写入到缓存,并且关联到具体的inode;由定时器延迟刷新,每一次只刷新特定数量的inode,刷新的数据内容必须是与inode相关联。而且本发明的缓存功能是以目录为操作的基本单位,可以指定目录打开或者关闭该功能特性。

本发明的一种分布式文件系统小文件写缓存优化的方法和现有技术相比,有益效果如下:

1、通过目录布局,实现缓存功能的开关控制,以及子目录对缓存功能开关控制的继承;

2、刷新inode操作由定时器触发,将同步刷新变成异步,并且可以实现批量刷新inode,刷新的数据内容与inode强相关,可以有效提高小文件写入效率;

3、可以同时面向大文件与小文件的写入操作。

附图说明

附图1为一种分布式文件系统小文件写缓存优化的方法的流程示意图。

具体实施方式

实施例1:

本发明是文件系统进行小文件写操作时,将所写入的数据保存到客户端缓存并且按照inode区分管理,然后由定时器定期将脏数据刷新到后端存储池,批量写入,批量刷新以提高小文件的写入效率。

一种分布式文件系统小文件写缓存优化的方法,具体方法步骤如下:

S1、挂载文件系统,指定目录打开缓存功能;所述的缓存功能的打开与关闭功能,以目录为操作的基本单位,而且子目录继承了缓存功能的打开与关闭功能。

S2、将所写入的数据保存到客户端缓存;

S3、缓存管理模块按照inode进行脏数据区分管理;在客户端每个inode里面新增一个索引,用来管理属于当前inode的脏数据,在客户端进行小文件写入时将所写入的数据关联到新增的索引上面。

S4、缓存刷新模块定期刷新脏数据到后端存储池。增加定时器,用于定期触发脏数据刷新操作;

在文件写入完成后关闭文件句柄,然后将待刷新inode放至任务队列,每一次只刷新特定数量的inode,刷新的数据内容必须是与inode相关联;以使得每一次刷新操作可以批量刷新inode的同时刷新与该inode关联的脏数据。

本发明还包括应用上述方法的装置,一种分布式文件系统小文件写缓存优化的装置,包括客户端、缓存功能开启模块、缓存管理模块和缓存刷新模块;

其中客户端,客户端缓存用于保存写入的数据;

缓存功能开启模块,以目录为操作的基本单位,用于缓存功能的打开与关闭;

缓存管理模块,用于按照inode进行脏数据区分管理;

缓存刷新模块,用于实现批量刷新inode,刷新的数据内容与inode相关联。

进一步,优选的结构为,所述的缓存刷新模块包括定时器,用于批量inode的延迟刷新。

本发明文件系统在进行小文件写入时,将所有的数据按照inode来分类管理,并且由定时器定期触发刷新操作,每一次刷新操作可以批量刷新inode,同时刷新与该inode相关的数据。

本发明通过目录布局,实现缓存功能的开关控制,以及子目录对缓存功能开关控制的继承;刷新inode操作由定时器触发,将同步刷新变成异步,并且可以实现批量刷新inode,刷新的数据内容与inode强相关,可以有效提高小文件写入效率;可以同时面向大文件与小文件的写入操作。

通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1