CN104933144A - 一种并行网络文件系统中保证数据有效性的系统及其方法 - Google Patents

一种并行网络文件系统中保证数据有效性的系统及其方法 Download PDF

Info

Publication number
CN104933144A
CN104933144A CN201510345488.6A CN201510345488A CN104933144A CN 104933144 A CN104933144 A CN 104933144A CN 201510345488 A CN201510345488 A CN 201510345488A CN 104933144 A CN104933144 A CN 104933144A
Authority
CN
China
Prior art keywords
page
data
read
catalogue
client
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.)
Granted
Application number
CN201510345488.6A
Other languages
English (en)
Other versions
CN104933144B (zh
Inventor
杨洪章
张建刚
张军伟
刘健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Zhongke Bluewhale Information Technology Co ltd
Institute of Computing Technology of CAS
Original Assignee
Tianjin Zhongke Bluewhale Information Technology Co ltd
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin Zhongke Bluewhale Information Technology Co ltd, Institute of Computing Technology of CAS filed Critical Tianjin Zhongke Bluewhale Information Technology Co ltd
Priority to CN201510345488.6A priority Critical patent/CN104933144B/zh
Publication of CN104933144A publication Critical patent/CN104933144A/zh
Application granted granted Critical
Publication of CN104933144B publication Critical patent/CN104933144B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

本发明公开了一种并行网络文件系统中保证数据有效性的系统及其方法,该系统包括:客户端,用于发送只读目录授权申请,接收所授予的只读目录授权,标记只读目录的版本号,并访问磁盘中该只读目录下的文件以及该文件的数据页面;元数据服务器,用于接收客户端发送的只读目录授权申请,并授予客户端只读目录授权;客户端在完成访问后归还该只读目录授权至元数据服务器,并清除该只读目录的版本号。

Description

一种并行网络文件系统中保证数据有效性的系统及其方法
技术领域
本发明涉及并行网络文件系统中文件间数据预读取后的缓存有效性机制,特别涉及一种并行网络文件系统中保证数据有效性的系统及其方法。
背景技术
随着大数据时代的来临,全球数据信息量迅猛增长。在电子商务、社交网络、科学计算等领域中存在越来越多的小尺寸的文件。美国太平洋西北国家实验室2007年统计,其内部存储的1200多万的文件中,80%以上的文件小于1MB,50%以上的文件小于32KB。从某种意义上来说,当前并不存在纯粹的大文件应用。人类逐步迈入“海量小文件的时代”。
并行网络文件系统(pNFS)采用元数据与数据服务分离结构,客户端通过带外访问模式直接访问存储设备,在大文件访问过程中性能极佳,同时,又因其广泛的兼容性和扩展性,得到工业界和学术界的支持,逐渐成为事实上的分布式文件系统标准。在文件“小而多”的发展趋势下,并行网络文件系统越来越多地承担了小文件管理的重任。然而,由于缺乏针对小文件的访问优化,小文件的性能较差。
在先前的技术研究中,提出机群文件系统中通过readdir++预读文件布局的系统及其方法(杨洪章、张军伟、刘振军等,申请号201410076739.0),该项专利基于目录授权机制,即元数据服务器可以保证客户端缓存中当前目录下文件的元数据的有效性,取得了十分理想的优化效果。如能将目录授权机制中对于“元数据有效性保证”推广至对于“数据有效性保证”,小文件的读访问性能将会有更进一步的提升。
但是,与元数据预取相比,数据预取存在的最大难点在于:即便拥有良好的物理局部性,但是无法准确确定预取数据页面是属于哪个文件,甚至会预取到其他目录下文件的数据页面,这对于将目录授权推广至“数据有效性保证”产生了很大的障碍。
针对上述现实需求以及当前相关研究的不足,有必要提出一种并行网络文件系统中保证数据有效性的系统及方法,该种方法能够保证预取数据的有效性,使得目录授权机制的含义得以扩展,数据访问的性能显著提升。
发明内容
本发明的目的在于提供一种并行网络文件系统中保证数据有效性的系统及其方法,用于保证预取数据的有效性。
为了实现上述目的,本发明提供一种并行网络文件系统中保证数据有效性的系统,包括:
客户端,用于发送只读目录授权申请,接收所授予的只读目录授权,标记只读目录的版本号,并访问磁盘中该只读目录下的文件以及该文件的数据页面;
元数据服务器,用于接收客户端发送的只读目录授权申请,并授予客户端只读目录授权;
客户端在完成访问后归还该只读目录授权至元数据服务器,并清除该只读目录的版本号。
所述的系统,其中,客户端在匿名页缓存中通过双向链表的方式组织匿名页,该双向链表的组织方式为二级索引,通过检查该双向链表中是否有相应页面的方式判断匿名页缓存中是否有该当前数据页面。
所述的系统,其中,客户端访问当前数据页面,并根据该文件布局判定页面缓存中是否有该当前数据页面,当页面缓存中有该当前数据页面时,进一步判定该当前数据页面是否为最后一个数据页面;当页面缓存中无该当前数据页面时,则进一步判定匿名页缓存中是否有该当前数据页面;
客户端当判定该当前数据页面为最后一个数据页面时,进一步判定当前访问文件是否为最后一个文件,若是,则归还该只读目录授权至元数据服务器,并清除该只读目录的版本号,若否,则访问下一个文件;
客户端当判定匿名页缓存中有该当前数据页面时,进一步比较匿名页版本号与当前只读目录的版本号,若小于当前只读目录的版本号,则向磁盘发出读盘请求,将当前只读目录的版本号标记在匿名页中;若大于或等于当前只读目录的版本号,则进一步判断当前数据页面是否是最后一个数据页面。
所述的系统,其中,客户端向磁盘发出读盘请求后,扩展该文件布局,并根据扩展后的文件布局向磁盘发送大粒度读盘请求;
磁盘处理该大粒度读盘请求,并根据扩展后的文件布局,将被请求大粒度数据发送给客户端;
客户端将大粒度数据的数据页面拷贝到所创建的匿名页链表中的空白匿名页中。
所述的系统,其中,所述扩展后的文件布局中扩展部分的文件布局大小等于一次大粒度请求页面数减去原始文件布局。
为了实现上述目的,本发明提供一种并行网络文件系统中保证数据有效性的方法,包括:
步骤一,客户端向元数据服务器发送只读目录授权申请,元数据服务器授予客户端只读目录授权;
步骤二,客户端标记只读目录的版本号,访问磁盘中该只读目录下的文件,并访问该文件的数据页面;
步骤三,客户端在完成访问后归还该只读目录授权至元数据服务器,并清除该只读目录的版本号。
所述的方法,其中,所述步骤二中,包括:
客户端在匿名页缓存中通过双向链表的方式组织匿名页,该双向链表的组织方式为二级索引,通过检查该双向链表中是否有相应页面的方式判断匿名页缓存中是否有该当前数据页面。
所述的方法,其中,所述步骤二中,包括:
客户端访问当前数据页面,并根据该文件布局判定页面缓存中是否有该当前数据页面,当页面缓存中有该当前数据页面时,进一步判定该当前数据页面是否为最后一个数据页面;当页面缓存中无该当前数据页面时,则进一步判定匿名页缓存中是否有该当前数据页面;
客户端当判定该当前数据页面为最后一个数据页面时,进一步判定当前访问文件是否为最后一个文件,若是,则进入步骤三,若否,则访问下一个文件;
客户端当判定匿名页缓存中有该当前数据页面时,进一步比较匿名页版本号与当前只读目录的版本号,若小于当前只读目录的版本号,则向磁盘发出读盘请求,将当前只读目录的版本号标记在匿名页中;若大于或等于当前只读目录的版本号,则进一步判断当前数据页面是否是最后一个数据页面。
所述的方法,其中,所述步骤二中,进一步包括:
客户端向磁盘发出读盘请求后,扩展该文件布局,并根据扩展后的文件布局向磁盘发送大粒度读盘请求;
磁盘处理该大粒度读盘请求,并根据扩展后的文件布局,将被请求大粒度数据发送给客户端;
客户端将大粒度数据的数据页面拷贝到所创建的匿名页链表中的空白匿名页中。
所述的方法,其中,所述扩展后的文件布局中扩展部分的文件布局大小等于一次大粒度请求页面数减去原始文件布局。
与现有技术相比,本发明的有益技术效果是:
本发明提出了一种并行网络文件系统中通过版本号保证数据有效性的系统及方法,以提高海量小文件读访问性能。本发明提出的系统及方法是基于pNFS中的只读目录授权机制。
附图说明
图1是本发明的版本号标记数据有效性示意图;
图2是本发明并行网络文件系统中保证数据有效性的系统结构图;
图3是本发明双向链表的组织方式示意图;
图4是本发明并行网络文件系统中保证数据有效性的方法流程图。
具体实施方式
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
如图1所示,是版本号标记数据有效性示意图。
版本号是一种时间标记,可区分同一客户端的不同只读目录授权。既可区分不同目录之间的授权,也可区分同一目录的多次授权。当元数据服务器授予客户端目录授权时,同时标记该授权的版本号。当客户端目录授权被召回时,版本号同时失效。下次再获得授权后,获得新的版本号。
版本号可以识别客户端缓存中的无效数据。在只读目录授权持有期间,当预读数据页面被组织在客户端时,设置该页面的版本号为该授权的版本号。客户端在访问数据页面时,如果出现陈旧版本号或错误版本号,则认为数据无效,需到磁盘获取最新数据并替换旧数据;如果是当前版本号或未来版本号,则认为数据有效。
在图1中,页面5的版本号1小于目录版本号5,为陈旧版本号;页面4的版本号3非当前目录的上次版本号1,且小于目录版本号5,为错误版本号;页面1、2、6的版本号等于目录版本号,为当前版本号;页面3的版本号6大于目录版本号5,为未来版本号。
版本号的好处有两点:
(1)使召回迅速响应。版本号技术将无效数据的清除工作延迟至读时清除。如果在授权召回时进行当前版本号页面的清除,则会导致庞大的系统开销,授权召回成本太高。
(2)提高磁盘利用率。在无版本号的目录授权机制下,预取到其他目录下的文件的数据是一种错误,需要清除。但如果恰巧这些数据页面所在的文件被只读目录授权保护,则可认为数据有效,可将该页面保留,提升缓存命中率。
如图2所示,是本发明并行网络文件系统中保证数据有效性的系统结构图。图3是本发明双向链表的组织方式示意图。
在图2中,该系统100包括以下模块:客户端模块1、服务器端模块2、磁盘模块3。
进一步地,客户端模块1包括如下8个子模块:
发送网络交互子模块11,用于向服务器端2发送RPC。在本发明中涉及到的场景有:申请、归还只读目录授权。
接收网络交互子模块12,用于接收服务器端2发送的RPC。在本发明中涉及到的场景有:申请只读目录授权,返回信息为整型变量1或0,用以表示是否获得该只读目录授权。
只读目录授权处理子模块13。
本发明的一个重要基础就在于客户端获得只读目录授权,这样才能保证本地缓存中数据的有效性。只读目录授权处理子模块13在本地维护已获得只读目录授权的目录链表,当获取到只读目录授权时,将该目录插入至相应链表末尾;当回收目录授权时,从相应链表中将其删除。
操作行为触发子模块14,用于触发目录内的随机访问操作,并按照随机序列访问该目录下的文件。
在本发明中,客户端随机访问同一目录下的若干文件。
文件布局子模块15,用于确定当前访问文件的数据页面数量以及页面存储在磁盘的具体位置等。
客户端访问文件时需持有文件布局,即该文件含有几个页面,页面存储在磁盘的具体位置等。
页面缓存子模块16,用于将已与具体的文件相关联的页面放入页面缓存中。
匿名页缓存子模块17,用于负责匿名页的管理、合并(如需要时)、检索、清除等工作,全部是围绕匿名页进行,也可以笼统地称为用于缓存匿名页。
匿名页是未关联到任何文件的数据页。磁盘大粒度读取访问返回的页面中,将原始请求的页面放置在页面缓存中,剩余的页面被称为匿名页。客户端在缓存中将匿名页通过双向链表的方式组织在匿名页缓存子模块17中,如图3所示。
在图3中,匿名页链表中记录该链表中页面的起始文件布局、总页面数、剩余页面数、使用情况等信息,其组织方式为二级索引。磁盘中位置连续的数据页面合并到同一匿名页链表中。
当操作行为触发子模块14(即上层应用)所需的页面没有在页面缓存中命中时,检查匿名页链表中是否有相应页面。若命中,则将其返回给操作行为触发子模块14,并保留在页面缓存中,同时摘除该匿名页,并将剩余页面数减少;若不命中,则发起同步读盘操作。
访问磁盘子模块18,用于通过读盘请求,访问磁盘上的数据。
进一步地,服务器端模块2包括如下4个子模块:
接收网络交互子模块21,用于接收由客户端发来的RPC请求,判断请求类型。
发送网络交互子模块22,用于根据接收的RPC请求的类型,给出回应。
只读目录授权子模块23,用于授予客户端只读目录授权,是客户端能够保持缓存中预读数据有效的基础。该模块主要由两部分功能组成:一部分是只读目录授权的授予,另一部分是只读目录授权的召回。服务器端维护一个全局的版本号,系统初始化时为1,每有一次授予只读目录授权,则将该值返回后增加1。
文件布局子模块24,用于管理服务器端的文件系统内全部文件的文件布局。
进一步地,磁盘模块3包括如下2个子模块:
处理磁盘访问请求模块31,用于排队处理客户端发送来的读盘请求。
将被请求数据返回模块32,用于根据文件布局,将被请求数据发送给客户端。
如图4所示,是本发明并行网络文件系统中保证数据有效性的方法流程图,结合图1、2,该流程包括以下操作步骤:
步骤(1),客户端获得只读目录授权,标记目录的版本号。
步骤(2),客户端触发随机访问操作,按照随机序列访问该目录下的文件。
步骤(3),客户端确定当前访问文件的数据页面数量,顺序访问该文件的所有数据页面。
步骤(4),客户端访问当前数据页面,检查本地缓存是否命中。如果命中页面缓存,则进入步骤(7);如果命中匿名页,则进入步骤(6);如果未命中,则触发同步预读,进入步骤(5)。
步骤(5),客户端发出读盘请求,将目录的版本号标记在匿名页中。
步骤(6),客户端检查匿名页版本号。如果小于目录的版本号,则该匿名页无效,将其清除后,重新到磁盘读取,进入步骤(5)。如果大于等于目录的版本号,则该匿名页有效,将其返回给操作行为触发子模块14,进入步骤(7)。
步骤(7),客户端检查当前数据页面是否是最后一个数据页面。如果否,则访问下一个数据页面,进入步骤(4)。如果是,则进入步骤(8)。
步骤(8),客户端检查当前访问文件是否是最后一个文件。如果否,则访问下一个文件,进入步骤(3)。如果是,则进入步骤(9)。
步骤(9),客户端归还只读目录授权,清除版本号。
在上述步骤中,进一步地,所述步骤(1)包括如下步骤:
(1-1)客户端的发送网络交互子模块11向服务器端发送RPC,申请只读目录授权。
(1-2)服务器端的接收网络交互子模块21接收RPC,判断该请求为只读目录授权请求。
(1-3)服务器端的只读目录授权子模块23处理该请求,给出是否授予的结果。
(1-4)如果授予,则返回版本号。
(1-5)如果不授予,则返回0。
(1-6)服务器端的发送网络交互子模块22将结果发送给客户端。
(1-7)客户端的接收网络交互子模块12接收服务器端发来的是否授予只读目录授权的结果。
(1-8)如果获得授权,则通知客户端的只读目录授权处理子模块13,进入步骤(1-10)。
(1-9)如果没有获得授权,则重回步骤(1-1)。
(1-10)客户端的只读目录授权处理子模块13将该目录记录在已获得只读目录授权链表中,同时标记版本号。
在上述步骤中,进一步地,所述步骤(2)包括如下步骤:
(2-1)客户端的操作行为触发子模块14触发目录内的随机访问操作。
(2-2)客户端的操作行为触发子模块14按照随机序列访问该目录下的文件。
在上述步骤中,进一步地,所述步骤(3)包括如下步骤:
(3-1)客户端的发送网络交互子模块11向服务器端发送RPC请求,获取当前访问文件的文件布局。
(3-2)服务器端的接收网络交互子模块21接收RPC请求,判断该请求为文件布局读取请求。
(3-3)服务器端的文件布局子模块24处理该请求,获取文件布局。
(3-4)服务器端的发送网络交互子模块22将结果发送给客户端。
(3-5)客户端的接收网络交互子模块12接收服务器端发来的文件布局。
(3-6)客户端的文件布局子模块15确定当前访问文件的数据页面数量。
(3-7)客户端的操作行为触发子模块14顺序访问该文件的所有数据页面。
在上述步骤中,进一步地,所述步骤(4)包括如下步骤:
(4-1)客户端的操作行为触发子模块14访问当前数据页面。
(4-2)客户端的页面缓存子模块16根据文件布局,查找页面缓存中是否有该数据页面。
(4-3)如果命中,则进入步骤(7)。
(4-4)如果未命中,则进入步骤(4-5)。
(4-5)客户端的匿名页缓存子模块17检查匿名页缓存中是否有该数据页面。
(4-6)如果未命中,则进入步骤(5)。
(4-7)如果命中,则进入步骤(6)。
在上述步骤中,进一步地,所述步骤(5)包括如下步骤:
(5-1)客户端的访问磁盘子模块18根据该文件布局,扩展为大粒度文件布局,扩展部分的文件布局大小等于一次大粒度请求页面数减去原始文件布局,位置为以原始文件布局为中心。
(5-2)客户端的匿名页缓存子模块17针对扩展后的文件布局,创建新的匿名页链表,在链表头部设置该匿名页链表的起始文件布局、总页面数、剩余页面数、版本号等信息。并增添相应的空白匿名页,同时加锁。
(5-3)客户端的访问磁盘子模块18根据大粒度文件布局,向磁盘发送大粒度读盘请求。
(5-4)磁盘的处理磁盘访问请求模块31排队处理客户端发送来的读盘请求。
(5-5)磁盘的将被请求数据返回模块32根据文件布局,将被请求大粒度数据发送给客户端。
(5-6)客户端的访问磁盘子模块18将数据页面拷贝到客户端的匿名页缓存子模块17相应空白匿名页中,之后对该匿名页解锁。
在上述步骤中,进一步地,所述步骤(6)包括如下步骤:
(6-1)客户端的匿名页缓存子模块17检查该匿名页的版本号,与只读目录授权链表中记录的目录的版本号相比较。
(6-2)如果小于目录的版本号,则该匿名页无效,将其清除后,重新到磁盘读取,进入步骤(5)。
(6-3)如果大于等于目录的版本号,则该匿名页有效,将其返回给操作行为触发子模块14,进入步骤(7)。
在上述步骤中,进一步地,所述步骤(7)包括如下步骤:
(7-1)客户端的文件布局子模块15检查当前数据页面是否是最后一个数据页面。
(7-2)如果否,客户端的操作行为触发子模块14访问下一个数据页面,进入步骤(4)。
(7-3)如果是,则进入步骤(8)。
在上述步骤中,进一步地,所述步骤(8)包括如下步骤:
(8-1)客户端的文件布局子模块15检查当前访问文件是否是最后一个文件。
(8-2)如果否,则访问下一个文件,进入步骤(3)。
(8-3)如果是,则进入步骤(9)。
在上述步骤中,进一步地,所述步骤(9)包括如下步骤:
(9-1)服务器端的只读目录授权子模块23决定召回只读目录授权。
(9-2)服务器端的发送网络交互子模块22向客户端发送RPC请求,通知其释放只读目录授权。
(9-3)客户端的接收网络交互子模块12接收只读目录授权召回通知。
(9-4)客户端的只读目录授权处理子模块13将待召回的目录从已授权的只读目录授权链表中摘除,将版本号清除。
(9-5)客户端的发送网络交互子模块11发送RPC,通知服务器端已归还只读目录授权。
(9-6)服务器端的只读目录授权子模块23将全局版本号增1。
本发明提出一种并行网络文件系统中通过版本号保证数据有效性的系统及方法。该发明使得只读目录授权的语义由“元数据有效性保证”扩展至对于“数据有效性保证”。获得只读目录授权的客户端,在读取该目录下的文件时,可以预取物理相邻的数据页面,提升磁盘吞吐量。后续访问将在缓存命中数据页面,省去了读盘的时间延迟,系统性能将显著提升。另一方面,该发明突破了原有预读机制对于无效数据的判别方式,在海量小文件的场景中,预取相邻数据,是有可能预取到其他目录下文件的数据的,而若恰巧该文件处于只读目录授权的保护,则预取工作有意义,数据有效,既节省了后续磁盘访问的时间延迟,又节省了清除缓存以及缓存抖动造成的系统开销。本发明具有十分深远的意义。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (10)

1.一种并行网络文件系统中保证数据有效性的系统,其特征在于,包括:
客户端,用于发送只读目录授权申请,接收所授予的只读目录授权,标记只读目录的版本号,并访问磁盘中该只读目录下的文件以及该文件的数据页面;
元数据服务器,用于接收客户端发送的只读目录授权申请,并授予客户端只读目录授权;
客户端在完成访问后归还该只读目录授权至元数据服务器,并清除该只读目录的版本号。
2.根据权利要求1所述的系统,其特征在于,客户端在匿名页缓存中通过双向链表的方式组织匿名页,该双向链表的组织方式为二级索引,通过检查该双向链表中是否有相应页面的方式判断匿名页缓存中是否有该当前数据页面。
3.根据权利要求1或2所述的系统,其特征在于,客户端访问当前数据页面,并根据该文件布局判定页面缓存中是否有该当前数据页面,当页面缓存中有该当前数据页面时,进一步判定该当前数据页面是否为最后一个数据页面;当页面缓存中无该当前数据页面时,则进一步判定匿名页缓存中是否有该当前数据页面;
客户端当判定该当前数据页面为最后一个数据页面时,进一步判定当前访问文件是否为最后一个文件,若是,则归还该只读目录授权至元数据服务器,并清除该只读目录的版本号,若否,则访问下一个文件;
客户端当判定匿名页缓存中有该当前数据页面时,进一步比较匿名页版本号与当前只读目录的版本号,若小于当前只读目录的版本号,则向磁盘发出读盘请求,将当前只读目录的版本号标记在匿名页中;若大于或等于当前只读目录的版本号,则进一步判断当前数据页面是否是最后一个数据页面。
4.根据权利要求3所述的系统,其特征在于,客户端向磁盘发出读盘请求后,扩展该文件布局,并根据扩展后的文件布局向磁盘发送大粒度读盘请求;
磁盘处理该大粒度读盘请求,并根据扩展后的文件布局,将被请求大粒度数据发送给客户端;
客户端将大粒度数据的数据页面拷贝到所创建的匿名页链表中的空白匿名页中。
5.根据权利要求4所述的系统,其特征在于,所述扩展后的文件布局中扩展部分的文件布局大小等于一次大粒度请求页面数减去原始文件布局。
6.一种并行网络文件系统中保证数据有效性的方法,其特征在于,包括:
步骤一,客户端向元数据服务器发送只读目录授权申请,元数据服务器授予客户端只读目录授权;
步骤二,客户端标记只读目录的版本号,访问磁盘中该只读目录下的文件,并访问该文件的数据页面;
步骤三,客户端在完成访问后归还该只读目录授权至元数据服务器,并清除该只读目录的版本号。
7.根据权利要求6所述的方法,其特征在于,所述步骤二中,包括:
客户端在匿名页缓存中通过双向链表的方式组织匿名页,该双向链表的组织方式为二级索引,通过检查该双向链表中是否有相应页面的方式判断匿名页缓存中是否有该当前数据页面。
8.根据权利要求6或7所述的方法,其特征在于,所述步骤二中,包括:
客户端访问当前数据页面,并根据该文件布局判定页面缓存中是否有该当前数据页面,当页面缓存中有该当前数据页面时,进一步判定该当前数据页面是否为最后一个数据页面;当页面缓存中无该当前数据页面时,则进一步判定匿名页缓存中是否有该当前数据页面;
客户端当判定该当前数据页面为最后一个数据页面时,进一步判定当前访问文件是否为最后一个文件,若是,则进入步骤三,若否,则访问下一个文件;
客户端当判定匿名页缓存中有该当前数据页面时,进一步比较匿名页版本号与当前只读目录的版本号,若小于当前只读目录的版本号,则向磁盘发出读盘请求,将当前只读目录的版本号标记在匿名页中;若大于或等于当前只读目录的版本号,则进一步判断当前数据页面是否是最后一个数据页面。
9.根据权利要求8所述的方法,其特征在于,所述步骤二中,进一步包括:
客户端向磁盘发出读盘请求后,扩展该文件布局,并根据扩展后的文件布局向磁盘发送大粒度读盘请求;
磁盘处理该大粒度读盘请求,并根据扩展后的文件布局,将被请求大粒度数据发送给客户端;
客户端将大粒度数据的数据页面拷贝到所创建的匿名页链表中的空白匿名页中。
10.根据权利要求9所述的方法,其特征在于,所述扩展后的文件布局中扩展部分的文件布局大小等于一次大粒度请求页面数减去原始文件布局。
CN201510345488.6A 2015-06-19 2015-06-19 一种并行网络文件系统中保证数据有效性的系统及其方法 Expired - Fee Related CN104933144B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510345488.6A CN104933144B (zh) 2015-06-19 2015-06-19 一种并行网络文件系统中保证数据有效性的系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510345488.6A CN104933144B (zh) 2015-06-19 2015-06-19 一种并行网络文件系统中保证数据有效性的系统及其方法

Publications (2)

Publication Number Publication Date
CN104933144A true CN104933144A (zh) 2015-09-23
CN104933144B CN104933144B (zh) 2018-03-30

Family

ID=54120311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510345488.6A Expired - Fee Related CN104933144B (zh) 2015-06-19 2015-06-19 一种并行网络文件系统中保证数据有效性的系统及其方法

Country Status (1)

Country Link
CN (1) CN104933144B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113608694A (zh) * 2021-07-27 2021-11-05 北京达佳互联信息技术有限公司 数据迁移方法、信息处理方法、装置及服务器与介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1379339A (zh) * 2001-03-26 2002-11-13 微软公司 无服务器的分布式文件系统
WO2011160018A1 (en) * 2010-06-18 2011-12-22 Padalog Llc Interactive electronic catalog apparartus and method
CN103902660A (zh) * 2014-03-04 2014-07-02 中国科学院计算技术研究所 机群文件系统中通过readdir++预取文件布局的系统及其方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1379339A (zh) * 2001-03-26 2002-11-13 微软公司 无服务器的分布式文件系统
WO2011160018A1 (en) * 2010-06-18 2011-12-22 Padalog Llc Interactive electronic catalog apparartus and method
CN103902660A (zh) * 2014-03-04 2014-07-02 中国科学院计算技术研究所 机群文件系统中通过readdir++预取文件布局的系统及其方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨洪章、张军伟、许鲁、刘振军: "基于pNFS的小文件数据预读机制研究", 《计算机研究与发展》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113608694A (zh) * 2021-07-27 2021-11-05 北京达佳互联信息技术有限公司 数据迁移方法、信息处理方法、装置及服务器与介质
CN113608694B (zh) * 2021-07-27 2024-03-19 北京达佳互联信息技术有限公司 数据迁移方法、信息处理方法、装置及服务器与介质

Also Published As

Publication number Publication date
CN104933144B (zh) 2018-03-30

Similar Documents

Publication Publication Date Title
CN100530186C (zh) 缓存处理方法以及缓存处理系统
CN103902660B (zh) 机群文件系统中通过readdir++预取文件布局的系统及其方法
CN105960645B (zh) 安全系统和在安全系统中的方法
CN105183839A (zh) 一种基于Hadoop的小文件分级索引的存储优化方法
CN100543750C (zh) 一种基于web应用的矩阵式数据缓存方法及装置
CN104794182B (zh) 一种并行网络文件系统小文件异步预读装置及方法
CN102790809B (zh) 域名系统解析方法、装置及客户端
US20030093645A1 (en) Methods and apparatus for implementing host-based object storage schemes
CN105573669A (zh) 一种存储系统的io读加速缓存方法和系统
JP6781330B2 (ja) 検索キャッシュを更新する方法および装置
CN106339508B (zh) 一种基于分页的web缓存方法
US20080140997A1 (en) Data Processing System and Method
US9229869B1 (en) Multi-lock caches
CN106681990B (zh) 一种移动云存储环境下缓存数据的预取方法
CN102541985A (zh) 一种分布式文件系统中客户端目录缓存的组织方法
CN103984644B (zh) 一种数据管理方法及装置
CN103916465A (zh) 一种基于分布式文件系统的数据预读装置及其方法
TW200813714A (en) Disowning cache entries on aging out of the entry
CN102819586A (zh) 一种基于高速缓存的url分类方法和设备
US20190347337A1 (en) Path name cache for notifications of file changes
CN103907099A (zh) 高速缓存一致性计算机系统中未缓存的短地址转换表
CN104021137B (zh) 一种基于目录授权的客户端本地开闭文件的方法及系统
CN111506604A (zh) 访问数据的方法、装置和计算机程序产品
US20170103020A1 (en) Method and apparatus for online reducing caching devices
CN112148736A (zh) 缓存数据的方法、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180330

CF01 Termination of patent right due to non-payment of annual fee