CN111190863B - 一种目录管理方法、装置、设备、介质 - Google Patents

一种目录管理方法、装置、设备、介质 Download PDF

Info

Publication number
CN111190863B
CN111190863B CN201911386468.8A CN201911386468A CN111190863B CN 111190863 B CN111190863 B CN 111190863B CN 201911386468 A CN201911386468 A CN 201911386468A CN 111190863 B CN111190863 B CN 111190863B
Authority
CN
China
Prior art keywords
target
directory
mds
directories
subtrees
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.)
Active
Application number
CN201911386468.8A
Other languages
English (en)
Other versions
CN111190863A (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.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
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 Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201911386468.8A priority Critical patent/CN111190863B/zh
Publication of CN111190863A publication Critical patent/CN111190863A/zh
Application granted granted Critical
Publication of CN111190863B publication Critical patent/CN111190863B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/13File access structures, e.g. distributed indices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种目录管理方法、装置、设备、介质,该方法包括:在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;如果是,则停止向所述目标MDS中迁入目录子树。这样能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。

Description

一种目录管理方法、装置、设备、介质
技术领域
本申请涉及文件系统技术领域,特别涉及一种目录管理方法、装置、设备、介质。
背景技术
文件系统中,将目录树作为一种元数据缓存管理模式,包括文件系统的整个目录结构,所以将目录树拆分成多颗目录子树,每颗目录子树内部保留目录的树形结构,分布到不同的MDS服务上,实现负载均衡。为防止因目录子树过过多而影响相应的性能,需要给各个MDS(Metadata Server,元数据服务)可持有的目录子树设置上限,当MDS上目录子树进行迁入或迁出的过程中,需要保证每个MDS中保存的目录子树的数量不超过上限。对于一个MDS来说,在触发持续的目录子树迁移时,在所有需要迁移的目录子树迁移完成之后,才能执行相应的回调以更新对应的vector中保存的索引节点,这导致MDS中实际保存的目录子树超过或远低于设置的上限,进而影响的文件系统的性能。
发明内容
有鉴于此,本申请的目的在于提供一种目录管理方法、装置、设备、介质,能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。其具体方案如下:
第一方面,本申请公开了一种目录管理方法,包括:
子树对应的目标目录数量;
利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;
判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;
如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。
可选的,所述在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量,包括:
在监测到目标MDS中有目标目录子树迁入时,获取所述目标目录子树对应的目标目录数量;
相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非本地授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:
利用所述目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第一预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第一预设公式为:n=N-m+x,其中,n表示所述目录子树数量,N表示所述索引节点总数量,m表示所述非目标MDS授权目录数量,x表示所述目标目录数量。
可选的,所述在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量,包括:
在监测到目标MDS中有目标目录子树迁入和迁出时,获取迁入的所述目标目录子树对应的第一目标目录数量和迁出的所述目标目录子树对应的第二目标目录数量;
相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:
利用所述第一目标目录数量、所述第二目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第二预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第二预设公式为:n=N-m+x-y,其中,n表示所述目录子树数量,N表示所述索引节点总数量,m表示所述非目标MDS授权目录数量,x表示所述第一目标目录数量,y表示所述第二目标目录数量。
可选的,所述目录管理方法,还包括:
在监测到所述目标MDS保存的目录子树被删除和/或合并时,将所述目标vector中相应的索引节点删除。
可选的,所述目录管理方法,还包括:
在监测到所述目标MDS中的目录分区调整时,对所述目标vector中相应的索引节点进行对应调整。
可选的,判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值之后,还包括:
如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则遍历所述目标vector中的所有的所述索引节点,并将空索引节点从所述目标vector中删除。
可选的,所述对所述目标目录子树对应的目标索引节点进行相应的处理操作,包括:
将所述目标目录子树对应的目标索引节点增加到所述目标vector中;
和/或,将所述目标目录子树对应的目标索引节点从所述目标vector中删除。
第二方面,本申请公开了一种目录管理装置,包括:
信息获取模块,用于在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;
子树数量确定模块,用于利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;
索引节点处理模块,用于对所述目标目录子树对应的目标索引节点进行相应的处理操作;
判断模块,用于判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;
迁入停止模块,用于在所述目录子树数量大于或等于预设MDS可持有目录子树阈值时,则停止向所述目标MDS中迁入目录子树。
第三方面,本申请公开了一种设备,包括:
存储器和处理器;
其中,所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以实现前述公开的目录管理方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的目录管理方法。
可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;然后利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。由此可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出的时候,便会获取所述目标目录子树对应的目标目录数量,并利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,然后再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值,如果是,则停止向所述目标MDS中迁入目录子树,这样能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种目录管理方法流程图;
图2为本申请公开的一种具体的目录管理方法流程图;
图3为本申请公开的一种目录管理装置结构示意图;
图4为本申请公开的一种目录管理设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,对于一个MDS来说,在触发持续的目录子树迁移时,在所有需要迁移的目录子树迁移完成之后,才能执行相应的回调以更新对应的vector中保存的索引节点,这会导致MDS中实际保存的目录子树超过或远低于设置的上限,进而影响的文件系统的性能。有鉴于此,本申请提出了一种目录管理方法,能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。
参见图1所示,本申请实施例公开了一种目录管理方法,该方法包括:
步骤S11:在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量。
可以理解的是,在文件系统中,需要对目录子树进行管理,以保证整个文件系统的性能,所以会将目录子树存储在不同的MDS中,根据文件系统的实时运行情况,MDS上保存的目录子树会存在相应的变动,在目录子树从一个MDS迁移到另一个MDS的过程中,需要保证各个MDS中存储的目录子树小于预设MDS可持有目录子树阈值,所以在监测到目标MDS中有目标目录子树迁入和/或迁出时,需要获取所述目标目录子树对应的目标目录数量,以便确定所述目标MDS中当前保存的目录子树数量。
步骤S12:利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录。
在具体的实施例中,在获取到所述目标目录数量之后,还需要利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,其中,一个索引节点对应一个目录,一个目录对应一个目标子树。所述目标vector为与所述目标MDS对应的vector,非目标MDS授权目录为所述目标MDS不能直接对其进行操作的目录。还需要对所述目标目录子树对应的目标索引节点进行相应的处理操作。
步骤S13:判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值。
可以理解的是,在确定出所述目标MDS中当前保存的目录子树数量之后,还需要判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值,以控制所述目标MDS中保存的目录子树的数量。
步骤S14:如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。
在判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值时,如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值时,则停止向所述目标MDS迁入目录子树。在监测到所述目标MDS中有目标目录子树迁入和/或迁出时,便判断所述目标MDS中当前保存的目录子树数量是否大于或等于预设MDS可持有目录子树阈值,而不是在所有需要迁移的目录子树迁移完成之后,再进行相应的判断,能够精确地控制所述目标MDS中的目录子树的数量。
可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;然后利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。由此可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出的时候,便会获取所述目标目录子树对应的目标目录数量,并利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,然后再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值,如果是,则停止向所述目标MDS中迁入目录子树,这样能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。
参见图2所示,本申请实施例公开了一种具体的目录管理方法,该方法包括:
步骤S21:在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量。
步骤S22:利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录。
在具体的第一种实施例中,在监测到目标MDS中有目标目录子树迁入时,获取所述目标目录子树对应的目标目录数量,相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非本地授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:利用所述目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第一预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第一预设公式为:
n=N-m+x
其中,n表示所述目录子树数量,N表示所述索引节点总数量,m表示所述非目标MDS授权目录数量,x表示所述目标目录数量。具体的,在监测到目标MDS中有目标目录子树迁入时,需要将所述索引节点总数量和所述目标目录数量之和,再减去所述非目标MDS授权目录数量,便可以确定去所述目标MDS中当前保存的目录子树数量。
在具体的第二种实施例中,在监测到目标MDS中有目标目录子树迁入和迁出时,获取迁入的所述目标目录子树对应的第一目标目录数量和迁出的所述目标目录子树对应的第二目标目录数量;相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:利用所述第一目标目录数量、所述第二目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第二预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第二预设公式为:
n=N-m+x-y
其中,n表示所述目录子树数量,N表示所述索引节点总数量,m表示所述非目标MDS授权目录数量,x表示所述第一目标目录数量,y表示所述第二目标目录数量。具体的,在监测到目标MDS中有目标目录子树迁入和迁出时,将所述索引节点总数量和所述第一目标目录数量之和,减去所述非目标MDS授权目录数量,再减去所述第二目标目录数量,便可以确定去所述目标MDS中当前保存的目录子树数量。
在具体的第三种实施例中,在监测到目标MDS中有目标目录子树迁入时,将所述索引节点总数量减去所述非目标MDS授权目录数量,再减去所述目标目录数量,便可以确定去所述目标MDS中当前保存的目录子树数量。
步骤S23:将所述目标目录子树对应的目标索引节点增加到所述目标vector中,和/或,将所述目标目录子树对应的目标索引节点从所述目标vector中删除。
可以理解的是,还需要对所述目标目录对应的目标索引节点进行相应的处理,具体的,需要将所述目标目录对应的目标索引节点增加到所述目标vector中,和/或,将所述目标目录子树对应的目标索引节点从所述目标vector中删除。
步骤S24:判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值。
步骤S25:如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。
步骤S26:如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则遍历所述目标vector中的所有的所述索引节点,并将空索引节点从所述目标vector中删除。
在具体的实施过程中,在所述目录子树大于或等于预设MDS可持有目录子树阈值,需要遍历所述目标vector中的所有的所述索引节点,并将空索引节点从所述目标vector中删除。
此外,在监测到所述目标MDS保存的目录子树被删除和/或合并时,将所述目标vector中相应的索引节点删除。在监测到所述目标MDS中的目录分区调整时,对所述目标vector中相应的索引节点进行对应调整。也即,在对所述目标MDS中保存的目录子树做出相应的调整时,也需要相应的更新所述目标vector中的索引节点。
参见图3所示,本申请实施例公开了一种目录管理装置,包括:
信息获取模块11,用于在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;
子树数量确定模块12,用于利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;
索引节点处理模块13,用于对所述目标目录子树对应的目标索引节点进行相应的处理操作;
判断模块14,用于判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;
迁入停止模块15,用于在所述目录子树数量大于或等于预设MDS可持有目录子树阈值时,则停止向所述目标MDS中迁入目录子树。
可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;然后利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。由此可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出的时候,便会获取所述目标目录子树对应的目标目录数量,并利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,然后再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值,如果是,则停止向所述目标MDS中迁入目录子树,这样能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。
进一步的,参见4图所示,本申请实施例还公开了一种目录管理设备,包括:处理器21和存储器22。
其中,所述存储器22,用于存储计算机程序;所述处理器21,用于执行所述计算机程序,以实现前述实施例中公开的目录管理方法。
其中,关于上述目录管理方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现以下步骤:
在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。
可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;然后利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树。由此可见,本申请在监测到目标MDS中有目标目录子树迁入和/或迁出的时候,便会获取所述目标目录子树对应的目标目录数量,并利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,然后再判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值,如果是,则停止向所述目标MDS中迁入目录子树,这样能够精确控制MDS中保存的目录子树的数量,减轻MDS负载,提高文件系统性能。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在监测到目标MDS中有目标目录子树迁入时,获取所述目标目录子树对应的目标目录数量;相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非本地授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:利用所述目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第一预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第一预设公式为:n=N-m+x,其中,n表示所述目录子树数量,N表示所述索引节点总数量,m表示所述非目标MDS授权目录数量,x表示所述目标目录数量。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在监测到目标MDS中有目标目录子树迁入和迁出时,获取迁入的所述目标目录子树对应的第一目标目录数量和迁出的所述目标目录子树对应的第二目标目录数量;相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:利用所述第一目标目录数量、所述第二目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第二预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第二预设公式为:n=N-m+x-y,其中,n表示所述目录子树数量,N表示所述索引节点总数量,m表示所述非目标MDS授权目录数量,x表示所述第一目标目录数量,y表示所述第二目标目录数量。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在监测到所述目标MDS保存的目录子树被删除和/或合并时,将所述目标vector中相应的索引节点删除。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在监测到所述目标MDS中的目录分区调整时,对所述目标vector中相应的索引节点进行对应调整。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则遍历所述目标vector中的所有的所述索引节点,并将空索引节点从所述目标vector中删除。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:将所述目标目录子树对应的目标索引节点增加到所述目标vector中;和/或,将所述目标目录子树对应的目标索引节点从所述目标vector中删除。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得一系列包含其他要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种目录管理方法、装置、设备、介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.一种目录管理方法,其特征在于,包括:
在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;
利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,并对所述目标目录子树对应的目标索引节点进行相应的处理操作,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;所述目标vector为与所述目标MDS对应的vector,所述非目标MDS授权目录为所述目标MDS不能直接对其进行操作的目录;
判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;
如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则停止向所述目标MDS中迁入目录子树;
其中,所述在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量,包括:
在监测到目标MDS中有目标目录子树迁入和迁出时,获取迁入的所述目标目录子树对应的第一目标目录数量和迁出的所述目标目录子树对应的第二目标目录数量;
相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:
利用所述第一目标目录数量、所述第二目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第二预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第二预设公式为:
Figure DEST_PATH_IMAGE002
,其中,
Figure DEST_PATH_IMAGE004
表示所述目录子树数量,
Figure DEST_PATH_IMAGE006
表示所述索引节点总数量,
Figure DEST_PATH_IMAGE008
表示所述非目标MDS授权目录数量,
Figure DEST_PATH_IMAGE010
表示所述第一目标目录数量,
Figure DEST_PATH_IMAGE012
表示所述第二目标目录数量。
2.根据权利要求1所述的目录管理方法,其特征在于,所述在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量,包括:
在监测到目标MDS中有目标目录子树迁入时,获取所述目标目录子树对应的目标目录数量;
相应的,利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非本地授权目录数量,确定所述目标MDS当前保存的目录子树数量,包括:
利用所述目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第一预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第一预设公式为:
Figure DEST_PATH_IMAGE014
,其中,
Figure DEST_PATH_IMAGE016
表示所述目录子树数量,
Figure DEST_PATH_IMAGE018
表示所述索引节点总数量,
Figure DEST_PATH_IMAGE020
表示所述非目标MDS授权目录数量,
Figure DEST_PATH_IMAGE022
表示所述目标目录数量。
3.根据权利要求1所述的目录管理方法,其特征在于,还包括:
在监测到所述目标MDS保存的目录子树被删除和/或合并时,将所述目标vector中相应的索引节点删除。
4.根据权利要求1所述的目录管理方法,其特征在于,还包括:
在监测到所述目标MDS中的目录分区调整时,对所述目标vector中相应的索引节点进行对应调整。
5.根据权利要求4所述的目录管理方法,其特征在于,判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值之后,还包括:
如果所述目录子树数量大于或等于预设MDS可持有目录子树阈值,则遍历所述目标vector中的所有的所述索引节点,并将空索引节点从所述目标vector中删除。
6.根据权利要求1至5任一项所述的目录管理方法,其特征在于,所述对所述目标目录子树对应的目标索引节点进行相应的处理操作,包括:
将所述目标目录子树对应的目标索引节点增加到所述目标vector中;
和/或,将所述目标目录子树对应的目标索引节点从所述目标vector中删除。
7.一种目录管理装置,其特征在于,包括:
信息获取模块,用于在监测到目标MDS中有目标目录子树迁入和/或迁出时,获取所述目标目录子树对应的目标目录数量;
子树数量确定模块,用于利用所述目标目录数量、目标vector中的索引节点总数量以及所述目标vector中的非目标MDS授权目录数量,确定所述目标MDS当前保存的目录子树数量,其中,一个目录子树对应一个目录,一个索引节点对应一个所述目录;所述目标vector为与所述目标MDS对应的vector,所述非目标MDS授权目录为所述目标MDS不能直接对其进行操作的目录;
索引节点处理模块,用于对所述目标目录子树对应的目标索引节点进行相应的处理操作;
判断模块,用于判断所述目录子树数量是否大于或等于预设MDS可持有目录子树阈值;
迁入停止模块,用于在所述目录子树数量大于或等于预设MDS可持有目录子树阈值时,则停止向所述目标MDS中迁入目录子树;
其中,所述信息获取模块还用于在监测到目标MDS中有目标目录子树迁入和迁出时,获取迁入的所述目标目录子树对应的第一目标目录数量和迁出的所述目标目录子树对应的第二目标目录数量;
相应的,所述子树数量确定模块还用于利用所述第一目标目录数量、所述第二目标目录数量、目标vector中的索引节点总数量、所述目标vector中的非目标MDS授权目录数量以及第二预设公式,确定所述目标MDS当前保存的目录子树数量,其中,所述第二预设公式为:
Figure DEST_PATH_IMAGE024
,其中,
Figure DEST_PATH_IMAGE026
表示所述目录子树数量,
Figure DEST_PATH_IMAGE028
表示所述索引节点总数量,
Figure DEST_PATH_IMAGE030
表示所述非目标MDS授权目录数量,
Figure DEST_PATH_IMAGE032
表示所述第一目标目录数量,
Figure DEST_PATH_IMAGE034
表示所述第二目标目录数量。
8.一种目录管理设备,其特征在于,包括:
存储器和处理器;
其中,所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以实现权利要求1至6任一项所述的目录管理方法。
9.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的目录管理方法。
CN201911386468.8A 2019-12-29 2019-12-29 一种目录管理方法、装置、设备、介质 Active CN111190863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911386468.8A CN111190863B (zh) 2019-12-29 2019-12-29 一种目录管理方法、装置、设备、介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911386468.8A CN111190863B (zh) 2019-12-29 2019-12-29 一种目录管理方法、装置、设备、介质

Publications (2)

Publication Number Publication Date
CN111190863A CN111190863A (zh) 2020-05-22
CN111190863B true CN111190863B (zh) 2022-04-22

Family

ID=70711067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911386468.8A Active CN111190863B (zh) 2019-12-29 2019-12-29 一种目录管理方法、装置、设备、介质

Country Status (1)

Country Link
CN (1) CN111190863B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112597120B (zh) * 2020-11-30 2022-05-27 新华三大数据技术有限公司 一种目录管理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145307A (zh) * 2017-04-27 2017-09-08 郑州云海信息技术有限公司 一种基于分布式存储的动态元数据优化方法和系统
CN107590249A (zh) * 2017-09-18 2018-01-16 郑州云海信息技术有限公司 一种分布式文件系统的负载平衡方法、装置及设备
CN107766159A (zh) * 2017-11-13 2018-03-06 郑州云海信息技术有限公司 一种元数据管理方法、装置和计算机可读存储介质
CN108509275A (zh) * 2018-03-29 2018-09-07 新华三技术有限公司 一种目录迁移方法和元数据负载均衡方法
CN109783467A (zh) * 2019-01-12 2019-05-21 郑州云海信息技术有限公司 一种分布式文件系统的嵌套目录文件个数配额设置方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130218934A1 (en) * 2012-02-17 2013-08-22 Hitachi, Ltd. Method for directory entries split and merge in distributed file system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145307A (zh) * 2017-04-27 2017-09-08 郑州云海信息技术有限公司 一种基于分布式存储的动态元数据优化方法和系统
CN107590249A (zh) * 2017-09-18 2018-01-16 郑州云海信息技术有限公司 一种分布式文件系统的负载平衡方法、装置及设备
CN107766159A (zh) * 2017-11-13 2018-03-06 郑州云海信息技术有限公司 一种元数据管理方法、装置和计算机可读存储介质
CN108509275A (zh) * 2018-03-29 2018-09-07 新华三技术有限公司 一种目录迁移方法和元数据负载均衡方法
CN109783467A (zh) * 2019-01-12 2019-05-21 郑州云海信息技术有限公司 一种分布式文件系统的嵌套目录文件个数配额设置方法

Also Published As

Publication number Publication date
CN111190863A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
CN110321325B (zh) 文件索引节点查找方法、终端、服务器、系统及存储介质
CN107391045B (zh) 一种目录空间配额方法及系统
US10013312B2 (en) Method and system for a safe archiving of data
EP3495964B1 (en) Apparatus and program for data processing
US11151081B1 (en) Data tiering service with cold tier indexing
CN109446177B (zh) 一种分布式文件系统目录文件个数配额的实现方法及装置
US10678461B2 (en) Distributed scalable storage
CN110245129B (zh) 一种分布式全局数据去重方法和装置
TW201342097A (zh) 將巨量資料轉換為大物件之裝置及方法以及其電腦程式產品
US20200250136A1 (en) Domains-based snapshots for efficient membership retrieval and governance
CN108319634B (zh) 分布式文件系统的目录访问方法和装置
CN103544300B (zh) 一种云环境下可扩展存储索引结构的实现方法
US20170357659A1 (en) Systems and methods for managing snapshots of a file system volume
CN111190863B (zh) 一种目录管理方法、装置、设备、介质
WO2019018059A1 (en) DISTRIBUTED FILE STRUCTURE THAT CAN BE UPDATED
CN112000971B (zh) 一种文件权限记录方法、系统及相关装置
CN109189343B (zh) 一种元数据落盘方法、装置、设备及计算机可读存储介质
CN106354793B (zh) 监控热点对象的方法及装置
Aishwarya et al. Efficient prefetching technique for storage of heterogeneous small files in Hadoop Distributed File System Federation
CN111984650A (zh) 一种树结构数据的存储方法、系统及相关装置
KR20210077975A (ko) 블록체인 기반의 지리공간 데이터를 위한 공간 데이터 인덱싱 방법 및 장치
EP3995972A1 (en) Metadata processing method and apparatus, and computer-readable storage medium
CN115328859A (zh) 一种元数据访问方法、装置、设备及介质
US8549041B2 (en) Converter traversal using power of two-based operations
CN104537023A (zh) 一种反向索引记录的存储方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant