【技术实现步骤摘要】
一种分布式文件系统中多客户端数据读写方法
[0001]本专利技术涉及存储系统数据读写
,尤其涉及一种分布式文件系统中多客户端数据读写方法。
技术介绍
[0002]POSIX语义对一个文件的并发读写有保序的要求,同理在分布式文件系统多个客户端并发读写时也参考同样要求。
[0003]Ceph文件系统是当前主流的分布式文件系统之一,该文件系统对该场景的实现方案如下:允许单个客户端读写时利用客户端缓存进行缓存读写,但识别到多个客户端并发读写时,则回收所有客户端的缓存读写能力,即退化成直读直写模式,以此来保证一致性及POSIX语义要求。
[0004]但是Ceph方案在多客户端同时读写场景中直读直写模式更多适用于小IO随机读写,但对于在单个文件不同偏移上进行大IO顺序读写的场景不太友好,不能充分利用客户端缓存提升性能。
[0005]因此,如何提供一种多客户端读写同一文件时仍能充分利用客户端缓存的方法,成为亟待解决的技术问题。
技术实现思路
[0006]有鉴于此,为了克服现有技术的不足,本专利 ...
【技术保护点】
【技术特征摘要】
1.一种分布式文件系统中多客户端数据读写方法,其特征在于,所述方法包括:步骤S1:系统中客户端以读写模式打开文件时,MDS为各客户端分配默认大小的范围锁;步骤S2:客户端在MDS分配的范围锁内进行缓存读写时判断客户端对应的读写模式;步骤S3:MDS汇总系统内读写文件的所有客户端对应的读写模式,根据汇总结果确定文件的读写模式;步骤S4:客户端根据确定的文件的读写模式对文件进行读写。2.根据权利要求1所述的分布式文件系统中多客户端数据读写方法,其特征在于,步骤S2包括:客户端在MDS分配的范围锁内进行缓存读写时,记录每次IO的偏移和长度,根据记录的IO的偏移和长度确定每次读写的位置,将每次读写的位置与上一次读写的位置进行比较,根据比较结果判断客户端对应的读写模式。3.根据权利要求2所述的分布式文件系统中多客户端数据读写方法,其特征在于,步骤S2中,将每次读写的位置与上一次读写的位置进行比较,根据比较结果判断客户端对应的读写模式,包括:当每次读写的位置与上一次读写的位置相同,将客户端对应的读写模式判定为顺序读写;当每次读写的位置与上一次读写的位置不同,将客户端对应的读写模式判定为随机读写。4.根据权利要求1所述的分布式文件系统中多客户端数据读写方法,其特征在于,步骤S3中,根据汇总结果确定文件的读写模式,包括:当系统内读写文件的所有客户端对应的读写模式都是顺序读写,将文件的读写模式判定为范围锁模式;当系统内读写文件的任意客户端对应的读写模式为随机读写,将文件的读写模式判定为直读直写模式。5.根据权利要求1所述的分布式文件系统中多客户端数据读写方法,其特征在于,步骤S4包括:如果文件的读写模式为范围锁模式,客户端在读写所述文件时,将所述客户...
【专利技术属性】
技术研发人员:张思耀,刘源,
申请(专利权)人:中电云数智科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。