本申请公开了一种数据处理的方法及相关装置,存储设备获取目标目录的更新状态,根据更新状态生成目标目录信息,其中,目标目录信息用于指示目标目录的第一子目录和第二子目录,第一子目录包括了下一级的子目录,第二子目录不包括下一级的子目录;存储设备接收到来自用户设备的针对于目标目录的第一统计请求后,向用户设备发送目标目录信息,以便用户设备根据目标目录信息向存储设备发送针对于第一子目录的第二统计请求。本申请中,用户设备根据目标目录信息的指示,仅对有包括下一级子目录的第一子目录发起统计请求,而对于不包括下一级子目录的第二子目录则无需发起统计请求,减少了用户设备与存储设备之间的交互流程,提高了数据处理的效率。提高了数据处理的效率。提高了数据处理的效率。
【技术实现步骤摘要】
一种数据处理的方法及相关装置
[0001]本申请实施例涉及计算机领域,尤其涉及一种数据处理的方法及相关装置。
技术介绍
[0002]对于公有云大数据业务,用户设备可以通过rest api接口向大数据业务的存储设备发送http list请求,以做读、写或列举等处理。
[0003]当用户设备通过向存储设备发送http list请求,来对存储设备中某个指定的目录进行处理时,用户设备需要对存储设备所反馈的响应进行递归列举。请参阅图1,图1为用户设备对指定目录进行递归列举的流程示意图。如图1所示,若存储设备中所反馈的统计结果中,指示了当前指定目录中包括了下一级的子目录,那么用户设备则需要进一步向存储设备发送针对于该子目录的http list请求,直至最终的统计结果中不存在下一级的子目录则收敛,然后用户设备再将所反馈的子目录和文件累加到统计结果中。
[0004]用户设备需要对每个目录都发送http list请求,处理流程较为繁琐。若子目录数量较多,则用户设备与存储设备之间的交互时长会过长。
技术实现思路
[0005]本申请实施例提供了一种数据处理的方法及相关装置,用于提高数据处理的效率。
[0006]第一方面,本申请实施例提供了一种数据处理的方法,在大数据业务的场景中,用户设备可以通过业务层对存储于存储设备中的业务数据进行更新,例如创建文件、删除文件或修改文件等。相应的,在对存储设备中的文件做出更新后,存储设备也需要获取该文件所在的父目录(即本申请中的目标目录)的更新状态,该更新状态记录了本次更新所发生的变化(包括文件数的增量和数据增量),例如对于所创建的文件数量为+1,对于所删除的文件数量为
‑
1。该更新状态用于后续对元数据索引层中的该目标目录的元数据进行同步更新。
[0007]存储设备中,一般每个文件或目录都有其所在的归属节点。当存储设备中的文件发生更新时,例如创建文件、删除文件或追加写导致文件大小变化,文件的归属节点向该文件所在的目录(父目录)的归属节点发送消息,消息中携带父目录的路径、文件大小增量以及文件数增量;而创建子目录或删除子目录时,同样向该子目录所在的目录(父目录)的归属节点发送消息。目录的归属节点从元数据索引层(IndexLayer)读出目录的更新状态,目录的归属节点便可以根据该更新状态来更新元数据索引层(IndexLayer)中的元数据。
[0008]存储文件中的文件经过更新后,存储设备获取该文件所在的父目录(目标目录)的更新状态(包括文件数的增量和数据增量),然后根据该更新状态生成目标目录信息。本申请中,目标目录信息用于指示目标目录的第一子目录和第二子目录,本申请所定义的第一子目录和第二子目录表示的是该目标目录的子目录的类型,其中,第一子目录是包括了下一级的子目录的,而第二子目录是不包括下一级的子目录的。例如,第一子目录进一步又包
括了下一级的子目录(第三子目录和第四子目录),而第二子目录仅包括文件数据或者第二子目录为空目录。即第一子目录是第三子目录和第四子目录的父目录,而第三子目录和第四子目录又是目标目录的孙子目录。换句话说,本申请中的目标目录信息指示了该目标目录中存在哪些子目录是有下一级的子目录,也指示了该目标目录中存在哪些子目录是没有下一级的子目录。
[0009]示例性的,以目录A为本申请的目标目录为例,该目录A中,包括了目录B、目录C、目录D和文件A,往下一级中,目录B包括了目录E,目录C包括了文件B,目录D为空目录。由于目录B包括了下一级的子目录(目录E),则目录B为第一子目录;而由于目录C和目录D并没有包括下一级的子目录,则目录C和目录D均为第二子目录。
[0010]应理解,本申请中,并不限定第一子目录和第二子目录的数量,在实际应用中,该目标目录中可以不包括第一子目录或第二子目录,即第一子目录的数量为0个;或者,第二子目录的数量为0个;或者,第一子目录和第二子目录的数量都为0个;又或者,第一子目录或第二子目录的数量为至少一个,具体此处不做限定。
[0011]存储设备生成该目标目录对应的目标目录信息之后,用户设备可以向存储设备发送针对于该目标目录的第一统计请求来进行递归统计,则存储设备将目标目录信息发送给用户设备。由于该目标目录信息指示了目标目录的第一子目录和第二子目录,其中,第一子目录包括了下一级的子目录,第二子目录不包括下一级的子目录,因此,用户设备在接收到该目标目录信息之后,可以感知该目标目录的子目录下面是否包括了下一级的子目录,换句话说,用户设备可以感知该目标目录是否存在孙子目录。
[0012]进一步的,用户设备可以继续向存储设备发送针对于第一子目录的第二统计请求,从而便于继续对第一子目录的下一级的子目录进行统计;另一方面,由于第二子目录不存在下一级的子目录,而对于第二子目录下的文件信息,用户设备已经通过目标目录信息可以确定得到,所以,用户设备则无需再对该第二子目录发送统计请求。若目标目录中不存在第一子目录,则本次递归统计的流程便可以收敛,用户设备无需再向存储设备发送统计请求。
[0013]本申请中,用户设备可以根据目标目录信息的指示,仅对有包括下一级子目录的第一子目录发起后续的统计请求,而对于不包括下一级子目录的第二子目录则无需发起统计请求,减少了用户设备与存储设备之间的交互流程,提高了数据处理的效率。
[0014]基于第一方面,一种可选的实施方式中,以第一子目录其下一级的子目录为第三子目录和第四子目录为例,存储设备接收来自用户设备的针对于第一子目录的第二统计请求后,存储设备便将第一子目录对应的第一子目录信息发送给用户设备。其中,第一子目录信息用于指示第一子目录的第三子目录和第四子目录,第三子目录包括了下一级的子目录,第四子目录不包括下一级的子目录。因此,用户设备在接收到该第一子目录信息之后,可以感知该第一子目录的子目录下面是否包括了下一级的子目录,换句话说,用户设备可以感知该第一子目录目录是否存在孙子目录。所以。用用户设备可以继续向存储设备发送针对于第三子目录的第三统计请求,从而便于继续对第三子目录的下一级的子目录进行统计;另一方面,由于第四子目录不存在下一级的子目录,而对于第四子目录下的文件信息,用户设备已经通过第一子目录信息可以确定得到,所以,用户设备则无需再对该第四子目录发送统计请求。若目标目录中不存在第三子目录,则本次递归统计的流程便可以收敛,用
户设备无需再向存储设备发送统计请求。
[0015]基于第一方面,一种可选的实施方式中,目标目录信息也可以指示目标目录的统计信息,其中该统计信息具体指的是该目标目录中的目录个数、文件个数以及文件总大小,例如,上述父目录A的统计信息中,指示了目录数量为5个(即父目录A、子目录B、子目录C、子目录D和孙子目录E),文件个数为2个(即文件A和文件B),文件总大小为10MB(假设文件A和文件B都为5MB)。
[0016]基于第一方面,一种可选的实施方式中,目标目录信息所记录的内容(包括上述统计信息),可以承载于该目标目录的元本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种数据处理的方法,其特征在于,包括:存储设备获取目标目录的更新状态;所述存储设备根据所述更新状态生成目标目录信息,其中,所述目标目录信息用于指示所述目标目录的第一子目录和第二子目录,所述第一子目录包括了下一级的子目录,所述第二子目录不包括下一级的子目录;响应于所述存储设备接收到来自用户设备的针对于所述目标目录的第一统计请求,所述存储设备根据所述第一统计请求向所述用户设备发送所述目标目录信息,以便所述用户设备根据所述目标目录信息向所述存储设备发送针对于所述第一子目录的第二统计请求。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:响应于所述存储设备接收到来自用户设备的所述第二统计请求,所述存储设备根据所述第二统计请求向所述用户设备发送第一子目录信息,以便所述用户设备根据所述第一子目录信息向所述存储设备发送针对于第三子目录的第三统计请求,其中,所述第一子目录信息用于指示所述第一子目录的所述第三子目录和第四子目录,所述第三子目录包括了下一级的子目录,所述第四子目录不包括下一级的子目录。3.根据权利要求1或2所述的方法,其特征在于,所述目标目录信息承载于所述目标目录的元数据中。4.根据权利要求1、2或3所述的方法,其特征在于,所述目标目录信息还用于指示所述目标目录的统计信息。5.一种数据处理装置,其特征在于,包括:获取单元,用于获取目标目录的更新状态;生成单元,用于根据所述更新状态生成目标目录信息,其中,所述目标目录信息用于指示所述目标目录的第一子目录和第二子目录,所述第一子目录包括了下一级的子目录,所述第二子目录不包括下一级的子目录;发送单元,当接收到来自用户设备的针对于所述目标目录的第一统计请求时,用于根据所...
【专利技术属性】
技术研发人员:汪正洋,
申请(专利权)人:华为云计算技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。