CN106802950A - 一种分布式文件系统小文件写缓存优化的方法 - Google Patents
一种分布式文件系统小文件写缓存优化的方法 Download PDFInfo
- Publication number
- CN106802950A CN106802950A CN201710029014.XA CN201710029014A CN106802950A CN 106802950 A CN106802950 A CN 106802950A CN 201710029014 A CN201710029014 A CN 201710029014A CN 106802950 A CN106802950 A CN 106802950A
- Authority
- CN
- China
- Prior art keywords
- inode
- small documents
- file system
- caching
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1727—Details of free space management performed by the file system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式文件系统小文件写缓存优化的方法,涉及计算机存储领域,具体方法如下:S1、挂载文件系统,指定目录打开缓存功能;S2、将所写入的数据保存到客户端缓存;S3、缓存管理模块按照inode进行脏数据区分管理;S4、缓存刷新模块定期刷新脏数据到后端存储池。本发明通过目录布局,实现缓存功能的开关控制,以及子目录对缓存功能开关控制的继承;刷新inode操作由定时器触发,将同步刷新变成异步,并且可以实现批量刷新inode,刷新的数据内容与inode强相关,可以有效提高小文件写入效率;可以同时面向大文件与小文件的写入操作。
Description
技术领域
本发明涉及计算机存储领域,具体地说是一种分布式文件系统小文件写缓存优化的方法。
背景技术
随着计算机技术的快速发展,各种形式的信息数据量越来越大,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强相关,可以有效提高小文件写入效率;可以同时面向大文件与小文件的写入操作。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
Claims (7)
1.一种分布式文件系统小文件写缓存优化的方法,其特征在于,具体方法步骤如下:
S1、挂载文件系统,指定目录打开缓存功能;
S2、将所写入的数据保存到客户端缓存;
S3、缓存管理模块按照inode进行脏数据区分管理;
S4、缓存刷新模块定期刷新脏数据到后端存储池。
2.根据权利要求1所述的一种分布式文件系统小文件写缓存优化的方法,其特征在于,所述的S3缓存管理模块按照inode进行脏数据区分管理的具体步骤为:
在客户端每个inode里面新增一个索引,用来管理属于当前inode的脏数据,在客户端进行小文件写入时将所写入的数据关联到新增的索引上面。
3.根据权利要求1所述的一种分布式文件系统小文件写缓存优化的方法,其特征在于,所述的S4中缓存刷新的具体步骤为:
增加定时器,用于定期触发脏数据刷新操作;
在文件写入完成后关闭文件句柄,然后将待刷新inode放至任务队列,每一次只刷新特定数量的inode,刷新的数据内容必须是与inode相关联;以使得每一次刷新操作可以批量刷新inode的同时刷新与该inode关联的脏数据。
4.根据权利要求1所述的一种分布式文件系统小文件写缓存优化的方法,其特征在于,所述的缓存功能的打开与关闭功能,以目录为操作的基本单位。
5.根据权利要求4所述的一种分布式文件系统小文件写缓存优化的方法,其特征在于,所述的目录下的子目录继承了缓存功能的打开与关闭功能。
6.一种分布式文件系统小文件写缓存优化的装置,其特征在于,包括客户端、缓存功能开启模块、缓存管理模块和缓存刷新模块;
其中客户端,客户端缓存用于保存写入的数据;
缓存功能开启模块,以目录为操作的基本单位,用于缓存功能的打开与关闭;
缓存管理模块,用于按照inode进行脏数据区分管理;
缓存刷新模块,用于实现批量刷新inode,刷新的数据内容与inode相关联。
7.根据权利要求6所述的一种分布式文件系统小文件写缓存优化的装置,其特征在于,所述的缓存刷新模块包括定时器,用于批量inode的延迟刷新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710029014.XA CN106802950A (zh) | 2017-01-16 | 2017-01-16 | 一种分布式文件系统小文件写缓存优化的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710029014.XA CN106802950A (zh) | 2017-01-16 | 2017-01-16 | 一种分布式文件系统小文件写缓存优化的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106802950A true CN106802950A (zh) | 2017-06-06 |
Family
ID=58985740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710029014.XA Pending CN106802950A (zh) | 2017-01-16 | 2017-01-16 | 一种分布式文件系统小文件写缓存优化的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106802950A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107506447A (zh) * | 2017-08-25 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种基于本地文件系统的小文件读写方法及系统 |
CN107729435A (zh) * | 2017-09-29 | 2018-02-23 | 郑州云海信息技术有限公司 | 分布式文件系统任务分派的方法、装置、设备和存储介质 |
CN108089818A (zh) * | 2017-12-12 | 2018-05-29 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及存储介质 |
CN109117387A (zh) * | 2018-08-16 | 2019-01-01 | 郑州云海信息技术有限公司 | 一种inode缓存空间的管理方法、系统及相关组件 |
CN111078153A (zh) * | 2019-12-20 | 2020-04-28 | 同方知网(北京)技术有限公司 | 一种基于文件的分布式存储方法 |
CN111177090A (zh) * | 2020-01-14 | 2020-05-19 | 江苏鸿程大数据技术与应用研究院有限公司 | 一种基于子模优化算法的客户端缓存方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040186861A1 (en) * | 2003-01-17 | 2004-09-23 | Phatak Shirish Hemant | Method and system for use of storage caching with a distributed file system |
CN102314334A (zh) * | 2010-06-30 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种用于缓存用户对应用程序输入的内容的方法和设备 |
CN102725752A (zh) * | 2011-10-20 | 2012-10-10 | 华为技术有限公司 | 处理脏数据的方法及装置 |
CN103744975A (zh) * | 2014-01-13 | 2014-04-23 | 锐达互动科技股份有限公司 | 基于分布式文件的高效缓存服务器 |
CN104113599A (zh) * | 2014-07-22 | 2014-10-22 | 北京星网锐捷网络技术有限公司 | 一种缓存方法、装置及代理服务器 |
CN104111804A (zh) * | 2014-06-27 | 2014-10-22 | 暨南大学 | 一种分布式文件系统 |
CN105279267A (zh) * | 2015-10-23 | 2016-01-27 | 广州视睿电子科技有限公司 | 一种数据缓存方法和装置 |
-
2017
- 2017-01-16 CN CN201710029014.XA patent/CN106802950A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040186861A1 (en) * | 2003-01-17 | 2004-09-23 | Phatak Shirish Hemant | Method and system for use of storage caching with a distributed file system |
CN102314334A (zh) * | 2010-06-30 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种用于缓存用户对应用程序输入的内容的方法和设备 |
CN102725752A (zh) * | 2011-10-20 | 2012-10-10 | 华为技术有限公司 | 处理脏数据的方法及装置 |
CN103744975A (zh) * | 2014-01-13 | 2014-04-23 | 锐达互动科技股份有限公司 | 基于分布式文件的高效缓存服务器 |
CN104111804A (zh) * | 2014-06-27 | 2014-10-22 | 暨南大学 | 一种分布式文件系统 |
CN104113599A (zh) * | 2014-07-22 | 2014-10-22 | 北京星网锐捷网络技术有限公司 | 一种缓存方法、装置及代理服务器 |
CN105279267A (zh) * | 2015-10-23 | 2016-01-27 | 广州视睿电子科技有限公司 | 一种数据缓存方法和装置 |
Non-Patent Citations (3)
Title |
---|
何弘,毛勇锋: "《无盘站与终端技术从入门到精通》", 31 January 2003 * |
杨占华: "《BIOS&注册表完全攻略 设置、优化、安全、排障、维护、个性化典型实例》", 30 April 2005 * |
王乐乐,李勇: "《计算机多媒体技术》", 30 September 2012 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107506447A (zh) * | 2017-08-25 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种基于本地文件系统的小文件读写方法及系统 |
CN107729435A (zh) * | 2017-09-29 | 2018-02-23 | 郑州云海信息技术有限公司 | 分布式文件系统任务分派的方法、装置、设备和存储介质 |
CN108089818A (zh) * | 2017-12-12 | 2018-05-29 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及存储介质 |
CN108089818B (zh) * | 2017-12-12 | 2021-09-07 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及存储介质 |
CN109117387A (zh) * | 2018-08-16 | 2019-01-01 | 郑州云海信息技术有限公司 | 一种inode缓存空间的管理方法、系统及相关组件 |
CN109117387B (zh) * | 2018-08-16 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种inode缓存空间的管理方法、系统及相关组件 |
CN111078153A (zh) * | 2019-12-20 | 2020-04-28 | 同方知网(北京)技术有限公司 | 一种基于文件的分布式存储方法 |
CN111177090A (zh) * | 2020-01-14 | 2020-05-19 | 江苏鸿程大数据技术与应用研究院有限公司 | 一种基于子模优化算法的客户端缓存方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106802950A (zh) | 一种分布式文件系统小文件写缓存优化的方法 | |
CN109977111A (zh) | 采用基于散列和基于树的键-值数据结构的数据管理系统 | |
CN102843396B (zh) | 一种分布式缓存系统中的数据写入及读取方法及装置 | |
CN107368436B (zh) | 一种联合地址映射表的闪存冷热数据分离存储方法 | |
EP2735978A1 (en) | Storage system and management method used for metadata of cluster file system | |
CN109416681A (zh) | 使用幽灵指纹进行工作负载优化的重复数据删除 | |
CN113821171B (zh) | 一种基于哈希表与lsm树的键值存储方法 | |
CN103885728A (zh) | 一种基于固态盘的磁盘缓存系统 | |
CN106066890B (zh) | 一种分布式高性能数据库一体机系统 | |
CN104408163A (zh) | 一种数据分级存储方法和装置 | |
CN107391391A (zh) | 在固态硬盘的ftl实现数据拷贝的方法、系统及固态硬盘 | |
CN103916459A (zh) | 一种大数据归档存储系统 | |
CN104616680A (zh) | 基于光盘存储的重复数据删除系统及数据操作方法、装置 | |
Park et al. | A lookahead read cache: improving read performance for deduplication backup storage | |
CN104050057B (zh) | 一种历史感知的数据去重碎片消除方法与系统 | |
US20150212744A1 (en) | Method and system of eviction stage population of a flash memory cache of a multilayer cache system | |
CN100580669C (zh) | 在Flash存储介质上的关于文件分配表的缓存实现方法 | |
CN108595589A (zh) | 一种海量科学数据图片高效存取方法 | |
CN102609335B (zh) | 一种实现写时复制保护元数据的装置及方法 | |
CN102650972B (zh) | 数据存储方法、装置及系统 | |
CN107274923A (zh) | 一种提高固态硬盘中顺序读取流性能的方法及固态硬盘 | |
Lin et al. | Efficient sequential data migration scheme considering dying data for HDD/SSD hybrid storage systems | |
Carniel et al. | The performance relation of spatial indexing on hard disk drives and solid state drives. | |
CN115904226A (zh) | 固态驱动器、设备及固态驱动器的操作方法 | |
CN108958657A (zh) | 一种数据存储方法、存储设备及存储系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170606 |
|
RJ01 | Rejection of invention patent application after publication |