获取文件系统中子项元数据的方法、装置和系统的制作方法_5

文档序号:9911121阅读:来源:国知局
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器执行存储器中的指令,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0154]另外,根据本发明实施例的获取文件系统中子项元数据的系统500,如图5所示,可以包括协议客户端、元数据服务器和上述获取文件系统中子项元数据的装置300。在一个可选例子中,本领域技术人员可以理解,装置300可以用于执行上述方法实施例中与客户端代理对应的各个流程和/或步骤,为避免重复,在此不再赘述。
[0155]本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0156]所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0157]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
[0158]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
[0159]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0160]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称为“ROM” )、随机存取存储器(Random Access Memory,简称为“RAM” )、磁碟或者光盘等各种可以存储程序代码的介质。
[0161]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
【主权项】
1.一种获取文件系统中子项元数据的方法,其特征在于,包括: 客户端代理从元数据服务器中获取目标目录中的子项元数据; 所述客户端代理将获取到的所述子项元数据写入预读缓存; 若所述预读缓存中缓存的子项元数据的长度等于或大于交付长度,所述客户端代理向所述协议客户端发送所述预读缓存中缓存的长度为所述交付长度的子项元数据,同时继续从所述元数据服务器中获取所述目标目录中尚未获取到的子项元数据,直到向所述协议客户端发送了所述目标目录中的全部子项元数据,其中,所述交付长度小于或等于协议块大小,所述协议块大小用于表示协议客户端与所述客户端代理一次交互过程中能够传输的子项元数据的最大长度。2.根据权利要求1所述的方法,其特征在于,所述客户端代理从元数据服务器中获取目标目录中的子项元数据,包括: 在所述客户端代理首次从所述元数据服务器中获取所述目标目录中的子项元数据时,所述客户端代理以初始获取长度为单位从所述元数据服务器中获取所述目标目录中的子项元数据,所述初始获取长度大于所述协议块大小。3.根据权利要求1或2所述的方法,其特征在于,在所述客户端代理继续从所述元数据服务器中获取所述目标目录中尚未获取到的子项元数据之前,所述方法还包括: 所述客户端代理根据历史交付速度和历史预读速度,确定更新的获取长度,以使得所述预读缓存中缓存的子项元数据的量逐渐增加,其中,所述历史交付速度为所述客户端代理已经向所述协议客户端发送的所述目标目录中的子项元数据的长度与发送所述目标目录中已发送的子项元数据所用的时长之比,所述历史预读速度为所述客户端代理已经从所述元数据服务器中获取到的所述目标目录中的子项元数据的长度与获取所述目标目录中已获取到的子项元数据所用的时长之比; 所述客户端代理继续从所述元数据服务器中获取所述目标目录中尚未获取到的子项元数据,包括: 所述客户端代理以所述更新的获取长度为单位继续从所述元数据服务器中获取所述目标目录中的尚未获取到的子项元数据。4.根据权利要求3所述的方法,其特征在于,所述更新的获取长度L1+1由下式确定:Li+l 一 Li X ( Vs/Vr) 其中,L1表示本次获取的获取长度,^表示所述历史交付速度,Vr表示所述历史预读速度。5.根据权利要求1至4中任一项所述的方法,其特征在于,在所述客户端代理从元数据服务器中获取目标目录中的子项元数据之前,所述方法还包括: 所述客户端代理根据本次获取的获取长度,确定需要获取的所述目标目录下的多个目录分片对象的标识; 所述客户端代理向所述元数据服务器发送请求消息,所述请求消息包括所述多个目录分片对象的标识; 所述客户端代理从元数据服务器中获取目标目录中的子项元数据,包括: 所述客户端代理接收所述元数据服务器根据所述请求消息发送的所述目标目录中的子项元数据。6.根据权利要求2所述的方法,其特征在于,所述初始获取长度为所述协议块大小的N倍,所述N为大于或等于2的整数。7.—种获取文件系统中子项元数据的装置,其特征在于,包括: 获取单元,用于从元数据服务器中获取目标目录中的子项元数据; 写入单元,用于将获取的所述子项元数据写入预读缓存; 发送单元,用于若所述预读缓存中缓存的子项元数据的长度等于或大于交付长度,向所述协议客户端发送所述预读缓存中缓存的长度为所述交付长度的子项元数据,其中,所述交付长度小于或等于协议块大小,所述协议块大小用于表示协议客户端与所述装置一次交互过程中能够传输的子项元数据的最大长度; 所述获取单元还用于:在所述发送单元向所述协议客户端发送所述预读缓存中缓存的长度为所述交付长度的子项元数据的同时,继续从所述元数据服务器中获取所述目标目录中尚未获取到的子项元数据,直到向所述协议客户端发送了所述目标目录中的全部子项元数据。8.根据权利要求7所述的装置,其特征在于,所述获取单元具体用于: 在所述装置首次从所述元数据服务器中获取所述目标目录中的子项元数据时,以初始获取长度为单位从所述元数据服务器中获取所述目标目录中的子项元数据,所述初始获取长度大于所述协议块大小。9.根据权利要求7或8所述的装置,其特征在于,所述装置还包括: 确定单元,用于在所述装置继续从所述元数据服务器中获取所述目标目录中尚未获取到的子项元数据之前,根据历史交付速度和历史预读速度,确定更新的获取长度,以使得所述预读缓存中缓存的子项元数据的量逐渐增加,其中,所述历史交付速度为所述装置已经向所述协议客户端发送的所述目标目录的子项元数据的长度与发送所述目标目录中已发送的子项元数据所用的时长之比,所述历史预读速度为所述装置已经从所述元数据服务器中获取到的所述目标目录中的子项元数据的长度与获取所述目标目录中已获取到的子项元数据所用的时长之比; 所述获取单元具体用于: 以所述更新的获取长度为单位继续从所述元数据服务器中获取所述目标目录中的尚未获取到的子项元数据。10.根据权利要求9所述的装置,其特征在于,所述更新的获取长度L1+1由下式确定:Li+l一Li X (Vs/Vr) 其中,L1表示本次获取的获取长度,^表示所述历史交付速度,Vr表示所述历史预读速度。11.根据权利要求7至10中任一项所述的装置,其特征在于,所述确定单元还用于: 在所述从元数据服务器中获取目标目录中的子项元数据之前,根据本次获取的获取长度,确定需要获取的所述目标目录下的多个目录分片对象的标识; 所述发送单元还用于: 向所述元数据服务器发送请求消息,所述请求消息包括所述多个目录分片对象的标识; 所述获取单元具体用于: 接收所述元数据服务器根据所述请求消息发送的所述目标目录中的子项元数据。12.根据权利要求8所述的装置,其特征在于,所述初始获取长度为所述协议块大小的N倍,所述N为大于或等于2的整数。13.—种获取文件系统中子项元数据的系统,其特征在于,包括:协议客户端、元数据服务器和权利要求7至12中任一项所述的装置。
【专利摘要】本发明公开了一种获取文件系统中子项元数据的方法、装置和系统。该方法包括:客户端代理从元数据服务器中获取目标目录中的子项元数据;该客户端代理将该子项元数据写入预读缓存;若该预读缓存中子项元数据的长度等于或大于交付长度,该客户端代理向该协议客户端发送该预读缓存中长度为该交付长度的子项元数据,同时继续从该元数据服务器中获取尚未获取到的子项元数据,直到向该协议客户端发送了该目标目录中的全部子项元数据。本发明实施例的获取文件系统中子项元数据的方法、装置和系统,解决了协议客户端需要等待客户端代理从元数据服务器中获取子项元数据的问题,从而减少了协议客户端获取子项元数据的整体时延,提高了用户体验。
【IPC分类】G06F17/30
【公开号】CN105677754
【申请号】CN201511020192
【发明人】胡毅
【申请人】华为技术有限公司
【公开日】2016年6月15日
【申请日】2015年12月30日
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1