一种提升分布式文件系统下的文件追加写性能的方法技术方案

技术编号:38820473 阅读:28 留言:0更新日期:2023-09-15 19:59
本发明专利技术公开了一种提升分布式文件系统下的文件追加写性能的方法,涉及分布式文件系统技术领域,包括以下步骤:S1:客户端应用进程执行追加写操作;该提升分布式文件系统下的文件追加写性能的方法,文件是以追加写的模式写入,则对文件大小的缓存是否有效进行验证,若文件大小无效,则与客户端通信,获取文件当前的大小,然后设置当前文件大小的缓存值,然后根据当前文件大小的缓存值设置写操作的偏移,然后继续完成文件的写操作,然后根据写入数据的大小,更新文件大小的缓存值,若文件大小有效,获取文件大小的缓存值,然后根据上述步骤进行写操作,使得文件的追加写的延时更低,性能更高。能更高。能更高。

【技术实现步骤摘要】
一种提升分布式文件系统下的文件追加写性能的方法


[0001]本专利技术涉及分布式文件系统
,具体为一种提升分布式文件系统下的文件追加写性能的方法。

技术介绍

[0002]追加写是文件以附加模式打开,在每次写入之前,都会将文件的偏移量设置到文件的末尾,这样每次写入的新数据都写在文件的末尾。文件系统追加写传统方案的实现,主要是在写数据之前,重新验证文件的大小,将文件当前的大小作为文件的偏移值,将新的数据写在文件的末尾。对分布式文件系统而言,使用传统的追加写方案,独立客户端每一次在写数据的过程中,都需要从服务端获取最新的文件大小。客户端在写数据过程中,与服务端之间频繁的交互过程,无疑是增加了客户端写数据路径上的时间消耗,对文件系统的读写性能影响巨大。导致文件的追加写的延时较高,性能较差。

技术实现思路

[0003]针对现有技术的不足,本专利技术提供了一种提升分布式文件系统下的文件追加写性能的方法,解决了上述
技术介绍
中提出的问题。
[0004]为实现以上目的,本专利技术通过以下技术方案予以实现:一种提升分布式文件系统下的文件追加写性能的方法,包括以下步骤:
[0005]S1:客户端应用进程执行追加写操作;
[0006]S2:文件系统收到写请求,判断文件是否是以追加写的模式写入;
[0007]S3:以追加写的模式写入数据,需要重新验证文件的大小;
[0008]S4:客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小;
[0009]S5:客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小;
[0010]S6:根据文件当前的大小,设置写操作的文件偏移值;
[0011]S7:文件系统继续完成写操作;
[0012]S8:当文件系统追加写操作完成之后,根据写入的数据大小,更新客户端文件大小的缓存值。
[0013]可选的,所述S4客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小的步骤时,客户端获取文件当前的大小,然后客户端向服务端返回文件大小信息。
[0014]可选的,所述S5客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小的步骤与S6根据文件当前的大小,设置写操作的文件偏移值的步骤时,根据服务端获取文件大小的缓存值设置写操作的文件偏移值。
[0015]可选的,所述S1客户端应用进程执行追加写操作的步骤首先获取文件当前的大小,再进行应用进程写操作。
[0016]可选的,所述S4客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小的步骤与S6根据文件当前的大小,设置写操作的文件偏移值的步骤时,根据服务端重新获取的文件大小设置文件的缓存值,根据重新设置的文件缓存值设置写操作的文件偏移值。
[0017]可选的,所述S1至S7步骤中,服务端与客户端之间通信连接。
[0018]可选的,所述S5客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小的步骤中,客户端缓存有文件大以及与该文件大小相匹配的缓存值。
[0019]可选的,所述S3以追加写的模式写入数据,需要重新验证文件的大小的步骤中需要对文件的大小的缓存是否有效进行验证。
[0020]本专利技术提供了一种提升分布式文件系统下的文件追加写性能的方法,具备以下有益效果:
[0021]该提升分布式文件系统下的文件追加写性能的方法,通过判断文件是否以追加写的模式写入,若文件是以追加写的模式写入,则接着对文件大小的缓存是否有效进行验证,若文件大小无效,则与客户端通信,获取文件当前的大小,然后设置当前文件大小的缓存值,然后根据当前文件大小的缓存值设置写操作的偏移,然后继续完成文件的写操作,然后根据写入数据的大小,更新文件大小的缓存值,若文件大小有效,获取文件大小的缓存值,然后根据当前文件大小的缓存值设置写操作的偏移,然后继续完成文件的写操作,然后根据写入数据的大小,更新文件大小的缓存值,使得文件的追加写的延时更低,性能更高。
附图说明
[0022]图1为本专利技术步骤结构示意图;
[0023]图2为本专利技术流程结构示意图。
具体实施方式
[0024]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。
[0025]请参阅图1至图2,本专利技术提供一种技术方案:一种提升分布式文件系统下的文件追加写性能的方法,包括以下步骤:
[0026]S1:客户端应用进程执行追加写操作;
[0027]S2:文件系统收到写请求,判断文件是否是以追加写的模式写入;
[0028]S3:以追加写的模式写入数据,需要重新验证文件的大小;
[0029]S4:客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小;
[0030]S5:客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小;
[0031]S6:根据文件当前的大小,设置写操作的文件偏移值;
[0032]S7:文件系统继续完成写操作;
[0033]S8:当文件系统追加写操作完成之后,根据写入的数据大小,更新客户端文件大小的缓存值。
[0034]进一步,S4客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文
件当前的大小的步骤时,客户端获取文件当前的大小,然后客户端向服务端返回文件大小信息,以便进行文件的追加写操作。
[0035]进一步,S5客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小的步骤与S6根据文件当前的大小,设置写操作的文件偏移值的步骤时,根据服务端获取文件大小的缓存值设置写操作的文件偏移值,根据文件偏移值完成文件的写操作。
[0036]进一步,S1客户端应用进程执行追加写操作的步骤首先获取文件当前的大小,再进行应用进程写操作,以便进行文件写入。
[0037]进一步,S4客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小的步骤与S6根据文件当前的大小,设置写操作的文件偏移值的步骤时,根据服务端重新获取的文件大小设置文件的缓存值,根据重新设置的文件缓存值设置写操作的文件偏移值。
[0038]进一步,S1至S7步骤中,服务端与客户端之间通信连接。
[0039]进一步,S5客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小的步骤中,客户端缓存有文件大以及与该文件大小相匹配的缓存值。
[0040]进一步,S3以追加写的模式写入数据,需要重新验证文件的大小的步骤中需要对文件的大小的缓存是否有效进行验证。
[0041]综上,该提升分布式文件系统下的文件追加写性能的方法,使用时,获取文件当前的大小,然后应用程序进行写操作,接着判断文件是否以追加写的模式写入,若文件是以追加写的模式写入,则接着对文件大小的缓存是否有效进行验本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提升分布式文件系统下的文件追加写性能的方法,其特征在于:包括以下步骤:S1:客户端应用进程执行追加写操作;S2:文件系统收到写请求,判断文件是否是以追加写的模式写入;S3:以追加写的模式写入数据,需要重新验证文件的大小;S4:客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小;S5:客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小;S6:根据文件当前的大小,设置写操作的文件偏移值;S7:文件系统继续完成写操作;S8:当文件系统追加写操作完成之后,根据写入的数据大小,更新客户端文件大小的缓存值。2.根据权利要求1所述的一种提升分布式文件系统下的文件追加写性能的方法,其特征在于:所述S4客户端记录的文件大小缓存无效,通过与服务端之间进行交互,获取文件当前的大小的步骤时,客户端获取文件当前的大小,然后客户端向服务端返回文件大小信息。3.根据权利要求1所述的一种提升分布式文件系统下的文件追加写性能的方法,其特征在于:所述S5客户端记录的文件大小缓存有效,则直接使用客户端缓存的文件大小的步骤与S6根据文件当前的大小,设置写操作的文件偏移值的步骤时,根据服务端获取文件大小的缓存值设置写操作的文件偏移...

【专利技术属性】
技术研发人员:许博
申请(专利权)人:北京焱融科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1