CN118051476A - 快照配额管理方法、装置、设备及存储介质 - Google Patents
快照配额管理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN118051476A CN118051476A CN202410264139.0A CN202410264139A CN118051476A CN 118051476 A CN118051476 A CN 118051476A CN 202410264139 A CN202410264139 A CN 202410264139A CN 118051476 A CN118051476 A CN 118051476A
- Authority
- CN
- China
- Prior art keywords
- snapshot
- directory
- metadata
- target
- attribute information
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 120
- 238000000034 method Methods 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 12
- 239000012634 fragment Substances 0.000 claims description 10
- 230000002441 reversible effect Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 8
- 238000005192 partition Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/128—Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种快照配额管理方法、装置、设备及存储介质,涉及分布式处理技术领域。该方法通过元数据管理服务端获取到客户端发出的扩展属性请求后,在目录树中,根据扩展属性请求获取目标目录和目标属性,并对目标目录的元数据扩展目标属性,以获取目标元数据,将目标元数据发送至各客户端,以使各客户端的目录元数据进行更新后,根据目标客户端发送的快照创建请求获取快照目录,并获取快照目录的快照属性信息,根据目录树和快照属性信息生成快照树,并将快照树和快照属性信息发送至目标客户端,以使目标客户端实现快照配额管理,从而避免了对于外部云平台的配额管理依赖,提高了用户的使用体验。
Description
技术领域
本申请涉及分布式处理技术领域,具体涉及一种快照配额管理方法、装置、设备及存储介质。
背景技术
Ceph作为一个分布式文件系统,向用户提供分布式对象存储服务,用于数据计算领域,其中,Cephfs作为分布式文件系统的上层应用,提供目录快照能力,允许对目录子树进行快照,以实现对目录数据的备份。
而快照也会占用系统集群的空间,过多的快照数据,通常会导致系统集群的使用量信息不准确,同时也会降低系统集群的性能;因此需要对快照限制配额进行管理。而现有技术对于快照的限制一般是通过外部应用云平台管理实现,通过云平台的数据库记录管理目录的快照数量,并进行上限的控制,而这种方式使Cephfs的配额管理需要依赖其他的系统,对于直接使用Cephfs存储系统的用户则无法对快照进行配额管理,这降低了用户的使用体验。
现有技术在实现快照配额管理时,由于依赖外部系统导致Ceph的灵活性和用户体验方面仍有所欠缺。
发明内容
本申请提供一种快照配额管理方法、装置、设备及存储介质,用以解决现有技术在实现快照配额管理时,由于依赖外部系统导致Ceph的灵活性和用户体验方面仍有所欠缺的问题。
第一方面,本申请提供一种快照配额管理方法,包括:
获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求;
根据所述快照创建请求获取快照目录,并获取所述快照目录的快照属性信息,所述快照属性信息用于指示快照数量,根据所述目录树和所述快照属性信息生成快照树,并将所述快照树和所述快照属性信息发送至所述目标客户端,以使所述目标客户端实现快照配额管理。
在一种可能的设计中,所述获取所述快照目录的快照属性信息,包括:
将所述快照目录的名称作为快照路径名,根据所述快照路径名计算获取快照目录分片,获取所述快照目录分片的属性信息,并作为所述快照目录的快照属性信息,所述快照目录分片用于指示所述快照目录所处组别;
基于所述快照目录,逆序向上遍历至根目录,以获取多个节点目录,并获取各所述节点目录的快照属性信息与预设值的和值,作为各所述节点目录的新的快照属性信息,以实现对各所述节点目录的快照属性信息的更新;
根据所述目录树和所述快照目录的快照属性信息生成快照树。
在一种可能的设计中,所述根据所述目录树和所述快照目录的快照属性信息生成快照树,包括:
在所述目录树中,将存在所述快照目录的上一级目录标记为中间目录,以获取多个所述中间目录,并根据所述根目录和多个所述中间目录构建所述快照树。
第二方面,本申请提供一种快照配额管理方法,包括:
向元数据管理服务端发送扩展属性请求后,获取元数据管理服务端发送的目标元数据,并根据所述目标元数据对本地元数据库进行更新,所述目标元数据用于指示元数据管理服务端中发生扩展的元数据,所述扩展属性请求用于指示客户端发出的配额设置信息;
向所述元数据管理服务端发送快照创建请求后,获取所述元数据管理服务端发送的快照树和快照属性信息,并根据所述快照树和所述快照属性信息生成快照判断信号,所述快照创建请求用于指示快照目录的位置信息,所述快照判断信号用于指示是否允许创建快照。
在一种可能的设计中,所述根据所述目标元数据对本地元数据库进行更新,包括:
在所述本地元数据库中,根据所述目标元数据对应的目录名称查询获取目录名称相同的元数据,作为初始元数据,并将所述初始元数据更新为所述目标元数据,其中,所述本地元数据库关联存储有目录名称和对应的元数据,所述元数据用于指示各目录的配额;
在检测到全部的客户端更新完成后,向所述元数据管理服务端发送所述快照创建请求,并检测是否获取所述快照树和所述快照属性信息;
若否,则持续检测,直至检测到获取所述快照树和所述快照属性信息;若是,根据所述快照树和所述快照属性信息生成快照判断信号。
在一种可能的设计中,所述根据所述快照树和所述快照属性信息生成快照判断信号,包括:
在所述快照树中,根据所述快照创建请求获取所述快照目录,并在所述本地元数据库中,根据所述快照目录的名称查询获取对应的元数据,作为快照元数据,所述快照元数据用于指示所述快照目录的配额;
检测所述快照目录的快照属性信息指示的快照数量是否大于所述快照元数据,若大于,通过所述快照判断信号指示不允许创建快照;
若不大于,则在所述快照树中,基于所述快照目录的位置路径,逆序遍历所述位置路径上各目录的快照属性信息,并检测各目录的快照属性信息指示的快照数量是否大于各目录对应的元数据,若大于,通过所述快照判断信号指示不允许创建快照,否则通过所述快照判断信号指示允许创建快照。
第三方面,本申请提供一种快照配额管理装置,包括:
第一获取模块,用于获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
第一处理模块,用于将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求;
第一执行模块,用于根据所述快照创建请求获取快照目录,获取所述快照目录的快照属性信息,所述快照属性信息用于指示快照数量,根据所述目录树和所述快照属性信息生成快照树,并将所述快照树和所述快照属性信息发送至所述目标客户端,以使所述目标客户端实现快照配额限制。
第四方面,本申请提供一种快照配额管理装置,包括:
第二获取模块,用于获取元数据管理服务端发送的目标元数据,并根据所述目标元数据对本地元数据库进行更新,所述目标元数据用于指示元数据管理服务端中发生扩展的元数据;
第二处理模块,用于向所述元数据管理服务端发送快照创建请求后,获取所述元数据管理服务端发送的快照树和快照属性信息,并根据所述快照树和所述快照属性信息生成快照判断信号,所述快照创建请求用于指示快照目录的位置信息,所述快照判断信号用于指示是否允许创建快照。
第五方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现快照配额管理方法。
第六方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现快照配额管理方法。
本申请提供的快照配额管理方法、装置、设备及存储介质,通过元数据管理服务端获取到客户端发出的扩展属性请求后,在目录树中,根据扩展属性请求获取目标目录和目标属性,并对目标目录的元数据扩展目标属性,以获取目标元数据,将目标元数据发送至各客户端,以使各客户端的目录元数据进行更新后,根据目标客户端发送的快照创建请求获取快照目录,并获取快照目录的快照属性信息,根据目录树和快照属性信息生成快照树,并将快照树和快照属性信息发送至目标客户端,以使目标客户端实现快照配额管理,从而避免了对于外部云平台的配额管理依赖,提高了用户的使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的快照配额管理方法流程示意图一;
图2为本申请实施例提供的快照配额管理方法流程示意图二;
图3为本申请实施例提供的快照配额管理交互示意图;
图4为本申请实施例提供的扩展属性配额示意图;
图5为本申请实施例提供的快照配额感知示意图;
图6为本申请实施例提供的目录创建快照示意图;
图7为本申请实施例提供的目录更新示意图;
图8为本申请实施例提供的子树逆序更新示意图;
图9为本申请实施例提供的快照树示意图;
图10为本申请实施例提供的快照树配额控制示意图;
图11为本申请实施例提供的快照配额管理装置的结构示意图一;
图12为本申请实施例提供的快照配额管理装置的结构示意图二;
图13为本申请实施例提供的电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
Ceph是一个分布式存储系统,向用户提供分布式对象、文件、块存储服务,以用于大数据和云计算领域,其中Cephfs向用户提供分布式文件系统服务,让用户使用起来跟本地文件系统一样。同时Cephfs提供快照功能,用户可以利用快照对文件目录数据进行备份。而快照也会占用系统集群的空间,如果用户没有限制的使用,通常会导致集群的使用量信息不准确,快照容量作为集群内部信息,同时过多的快照也会降低系统集群的性能。
并且Ceph作为一个文件系统产品,需要有一个快照配额的能力,以避免过多的占用系统集群的空间,目前现有技术对于快照配额的管理是通过应用云平台实现,亦即云平台作为一个管理平台,通过调用Cephfs的文件系统接口来提供文件系统资源给用户使用,通过在云平台的数据库记录管理目录的快照数量,并进行上限配额的控制,这种方式使Cephfs的配额管理需要依赖其他的系统,对于直接使用Cephfs存储系统的用户则无法对快照进行配额管理,这降低了用户的使用体验。
本申请提供了一种快照配额管理方法,通过元数据管理服务端获取到客户端发出的扩展属性请求后,在目录树中,根据扩展属性请求获取目标目录和目标属性,并对目标目录的元数据扩展目标属性,以获取目标元数据,将目标元数据发送至各客户端,以使各客户端的目录元数据进行更新后,根据目标客户端发送的快照创建请求获取快照目录,并获取快照目录的快照属性信息,根据目录树和快照属性信息生成快照树,并将快照树和快照属性信息发送至目标客户端,以使目标客户端实现快照配额管理,从而避免了对于外部云平台的配额管理依赖,提高了用户的使用体验。
下面采用具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
实施例一
图1为本申请实施例提供的快照配额管理方法流程示意图一。如图1所示,该方法包括:
S101、获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
具体来说,元数据管理服务端在获取到客户端发送的用于指示配额设置信息的扩展属性请求后,在元数据管理服务端的目录树中,选取对应的目录作为目标目录,并对该目标目录的元数据增加扩展属性如snap_max_num以实现设置目标目录的快照上限,亦即实现扩展目标属性。
S102、将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求;
具体来说,元数据管理服务端在根据获取到的扩展属性请求,对目标目录的元数据实现扩展目标属性后,获取使用目标目录的客户端名单,并将目标目录扩展属性后的元数据作为更新信息,发送至客户端名单中的各个客户端中,以实现全局更新。
S103、根据所述快照创建请求获取快照目录,并获取所述快照目录的快照属性信息,所述快照属性信息用于指示快照数量,根据所述目录树和所述快照属性信息生成快照树,并将所述快照树和所述快照属性信息发送至所述目标客户端,以使所述目标客户端实现快照配额管理。
具体来说,在各客户端完成更新扩展目标属性的元数据后,将发出快照创建请求的客户端标记为目标客户端,使得元数据管理服务端根据目标客户端发送的快照创建请求,在目录树中,将需要生成快照的目录标记为快照目录,获取此时快照目录的快照属性信息,以及快照目录路径上的祖先目录的快照属性信息,并根据快照目录和祖先目录的快照属性信息生成快照树,将生成的快照树和快照属性信息发送至目标客户端,以生成用于指示是否允许创建快照的快照判断信号。
本实施例提供了一种快照配额管理方法,通过元数据管理服务端获取到客户端发出的扩展属性请求后,在目录树中,根据扩展属性请求获取目标目录和目标属性,并对目标目录的元数据扩展目标属性,以获取目标元数据,将目标元数据发送至各客户端,以使各客户端的目录元数据进行更新后,根据目标客户端发送的快照创建请求获取快照目录,并获取快照目录的快照属性信息,根据目录树和快照属性信息生成快照树,并将快照树和快照属性信息发送至目标客户端,以使目标客户端实现快照配额管理,从而避免了对于外部云平台的配额管理依赖,提高了用户的使用体验。
实施例二
图2为本申请实施例提供的快照配额管理方法流程示意图二。如图2所示,该方法包括:
S201、向元数据管理服务端发送扩展属性请求后,获取元数据管理服务端发送的目标元数据,并根据所述目标元数据对本地元数据库进行更新,所述目标元数据用于指示元数据管理服务端中发生扩展的元数据,所述扩展属性请求用于指示客户端发出的配额设置信息;
具体来说,在多个客户端中,若存在至少一个客户端对元数据管理服务端发送扩展属性请求,并使得元数据管理服务端根据扩展属性请求对目标目录的元数据进行扩展,以获取到对应的目标元数据后,元数据管理服务端将目标元数据发送至使用了目标目录的各客户端中,以使得各客户端根据目标元数据对本地元数据库进行更新。
S202、向所述元数据管理服务端发送快照创建请求后,获取所述元数据管理服务端发送的快照树和快照属性信息,并根据所述快照树和所述快照属性信息生成快照判断信号,所述快照创建请求用于指示快照目录的位置信息,所述快照判断信号用于指示是否允许创建快照;
具体来说,在检测到使用了目标目录的客户端全部完成对本地元数据库的更新后,用户通过客户端向元数据管理服务端发送快照创建请求,并检测是否获取元数据管理服务端发送的快照树和快照属性信息,若否,则持续检测,直至检测到获取快照树和快照属性信息,并基于快照树和快照属性信息指示的快照数量,进行逆序向上遍历到根目录,其中,只要存在一个快照目录或者祖先目录的快照属性信息大于对应的快照配额,则达到了配额上限,禁止创建快照,亦即通过快照判断信号指示不允许创建快照。
本实施例提供了一种快照配额管理方法,通过元数据管理服务端获取到客户端发出的扩展属性请求后,在目录树中,根据扩展属性请求获取目标目录和目标属性,并对目标目录的元数据扩展目标属性,以获取目标元数据,将目标元数据发送至各客户端,以使各客户端的目录元数据进行更新后,根据目标客户端发送的快照创建请求获取快照目录,并获取快照目录的快照属性信息,根据目录树和快照属性信息生成快照树,并将快照树和快照属性信息发送至目标客户端,以使目标客户端实现快照配额管理,从而避免了对于外部云平台的配额管理依赖,提高了用户的使用体验。
下面采用一个具体的实施例,对本申请的快照配额管理方法进行详细说明。
实施例三
图3为本申请实施例提供的快照配额管理交互示意图。图4为本申请实施例提供的扩展属性配额示意图。图5为本申请实施例提供的快照配额感知示意图。图6为本申请实施例提供的目录创建快照示意图。图7为本申请实施例提供的目录更新示意图。图8为本申请实施例提供的子树逆序更新示意图。图9为本申请实施例提供的快照树示意图。图10为本申请实施例提供的快照树配额控制示意图。结合图3至图10所示,所述方法包括:
S301、向元数据管理服务端发送扩展属性请求;
具体来说,如图4所示,用户通过向客户端输入setfattr命令如setfattr-nceph.snap.max_num-v<快照上限><快照目录>,以此来指定目标目录可以创建快照的上限,比如对/data1目录配置快照上限为十,即最多创建十个快照,客户端在对setfattr命令处理后生成对应的扩展属性请求,并发送至元数据管理服务端。
S302、根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据;
具体来说,元数据管理服务端在获取到扩展属性请求后,对扩展属性请求进行解析,以获取需要进行修改元数据的目录和需要进行扩展的属性亦即目标属性,并在目录树中标记为目标目录,对目标目录的元数据增加扩展目标属性如snap_max_num,以实现对目标目录快照配额的设置扩展,并将目标目录扩展后的元数据作为目标元数据。
S303、将所述目标元数据发送至所述客户端;
具体来说,如图5所示,在完成对目标目录的元数据扩展,亦即在元数据管理服务端中实现对目标目录的快照配额设置后,元数据管理服务端作为Cephfs集群的元数据管理中心,客户端的元数据都是通过MDS服务亦即元数据管理服务端进行分发的,所以这里通过对元数据管理服务端中的目录元数据CInode进行扩展属性设置以实现全局的管理,这里的全局管理包括快照配额信息的分发,让所有使用目标目录如/data1目录的客户端都获取到目标目录的配额设置信息亦即目标元数据。
S304、在所述本地元数据库中,根据所述目标元数据对应的目录名称查询获取目录名称相同的元数据,作为初始元数据,并将所述初始元数据更新为所述目标元数据;
具体来说,各客户端在收到元数据管理服务端发送的目标目录的目标元数据后,在各客户端的本地元数据库中,将对应名称相同的目录的初始元数据替换为目标元数据,以实现各客户端中对应目录的元数据指示的配额信息与元数据管理服务端中目标目录配额信息的同步更新。
S305、在检测到全部的客户端更新完成后,向所述元数据管理服务端发送所述快照创建请求;
具体来说,在各客户端的本地元数据库中完成对各目录的配额信息更新,亦即完成对目标元数据的更新后,若检测到用户通过客户端发起快照创建请求时,通过客户端将快照创建请求转发至元数据管理服务端,使得元数据管理服务端根据快照创建请求获取快照目录。
S306、根据所述快照创建请求获取快照目录,并获取所述快照目录的快照属性信息;
具体来说,如图7所示,元数据管理服务端在获取到快照目录后,需要获取此时快照目录和祖先目录的快照属性信息,对于获取快照目录的快照属性信息,Cephfs中的目录在含有大量子项的时候会进行目录分片如默认是10000个子项,将快照目录的名称作为快照路径名,根据快照路径名计算获取快照目录分片,亦即定位快照目录如“.snap”目录所属的目录分片,其中定位通过对路径名进行hash计算定位所在的目录分片,然后对目录分片的统计信息rstat.rsnaps加一,以获取快照目录分片的属性信息,并作为快照目录的快照属性信息,快照目录分片用于指示快照目录所处组别;
进一步地,如图8所示,通过子树逆序更新获取祖先目录的快照属性信息,由于在目录树中子节点的统计信息需要作用到父节点上,所以需要把/data1目录看成子树的叶子节点,逆序向上遍历到根目录,在遍历路径上的祖先目录都需要对快照统计信息进行加一,亦即基于快照目录,逆序向上遍历至根目录,以获取多个节点目录,并获取各节点目录的快照属性信息与预设值如一的和值,作为各节点目录的新的快照属性信息,以实现对各节点目录的快照属性信息的更新;
进一步地,如图6所示,对于快照目录的创建,在/data1下面的.snap是隐藏目录,在此目录下面创建子目录就是创建一个/data1目录的快照,如snap1子目录就是创建了一个名为snap1的快照,创建快照其实是创建一个软连接,使快照连接到/data1目录,此时/data1目录作为快照目录,目录/data1的元数据CInode中增加rstat.rsnaps属性用来获取此目录创建的快照数量,亦即更新获取快照目录的快照属性信息,如新增了快照snap1,就需要对目录的rstat.rsnaps亦即快照属性信息进行更新。
S307、根据所述目录树和所述快照目录的快照属性信息生成快照树;
具体来说,如图9所示,在获取到快照目录和祖先目录的快照属性信息后,在元数据管理服务端的目录树中,通过对有快照的目录联合起来构建成快照树,亦即在目录树中,将存在快照目录的上一级目录标记为中间目录,以获取多个中间目录,并根据根目录和多个中间目录构建快照树,如图所示,左图为文件系统目录树,其中/data2和/data1/dir1目录有快照,右图即以根目录、/data2和/data1/dir1构建的快照树,根目录与/data1/dir1之间的/data1没有快照,所以不在快照树中。
S308、将所述快照树和所述快照属性信息发送至所述目标客户端;
具体来说,元数据管理服务端在生成快照树后,将快照树以及快照树中各目录对应的快照属性信息发送至发出快照创建请求的客户端,亦即目标客户端中,若目标客户端未检测到获取快照树和快照属性信息,则持续检测,直至检测到获取快照树和快照属性信息。
S309、在所述快照树中,根据所述快照创建请求获取所述快照目录,并在所述本地元数据库中,根据所述快照目录的名称查询获取对应的元数据,作为快照元数据;
具体来说,若目标客户端检测到获取快照树和快照属性信息,目标客户端根据用户输入的快照创建请求,在快照树中获取对应的快照目录,并在本地元数据库中查询获取对应的用于指示快照配额的元数据,亦即获取快照元数据后,将快照元数据指示的快照配额与快照属性信息指示的快照数量进行比较检测,并根据检测结果生成用于指示是否允许创建快照的快照判断信号。
S310、检测所述快照目录的快照属性信息指示的快照数量是否大于所述快照元数据,若大于,通过所述快照判断信号指示不允许创建快照;
具体来说,如图10所示,在获取到快照目录如/data1/dir1所在的位置,然后检测快照统计信息亦即快照属性信息rstat.rsnaps是否超过快照配额上限亦即快照元数据snap_max_num,如果超过配额,则禁止创建,亦即通过快照判断信号指示不允许创建快照;
进一步地,如果没有超过配额,则逆序向上查看判断祖先目录是不是有超过配额的,如果直到根目录都没有超过配额,则允许创建快照,亦即若不大于,则在快照树中,基于快照目录的位置路径,逆序遍历位置路径上各目录的快照属性信息,并检测各目录的快照属性信息指示的快照数量是否大于各目录对应的元数据,若大于,通过快照判断信号指示不允许创建快照,否则通过快照判断信号指示允许创建快照。
本实施例提供了一种快照配额管理方法,通过元数据管理服务端获取到客户端发出的扩展属性请求后,在目录树中,根据扩展属性请求获取目标目录和目标属性,并对目标目录的元数据扩展目标属性,以获取目标元数据,将目标元数据发送至各客户端,以使各客户端的目录元数据进行更新后,根据目标客户端发送的快照创建请求获取快照目录,并获取快照目录的快照属性信息,根据目录树和快照属性信息生成快照树,并将快照树和快照属性信息发送至目标客户端,以使目标客户端实现快照配额管理,从而避免了对于外部云平台的配额管理依赖,提高了用户的使用体验。
本发明实施例可以根据上述方法示例对电子设备或主控设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图11为本申请实施例提供的快照配额管理装置的结构示意图一。如图11所示,该装置110包括:
第一获取模块111,用于获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
第一处理模块112,用于将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求;
第一执行模块113,用于根据所述快照创建请求获取快照目录,获取所述快照目录的快照属性信息,所述快照属性信息用于指示快照数量,根据所述目录树和所述快照属性信息生成快照树,并将所述快照树和所述快照属性信息发送至所述目标客户端,以使所述目标客户端实现快照配额限制。
进一步的,第一执行模块113,具体用于将所述快照目录的名称作为快照路径名,根据所述快照路径名计算获取快照目录分片,获取所述快照目录分片的属性信息,并作为所述快照目录的快照属性信息,所述快照目录分片用于指示所述快照目录所处组别;
基于所述快照目录,逆序向上遍历至根目录,以获取多个节点目录,并获取各所述节点目录的快照属性信息与预设值的和值,作为各所述节点目录的新的快照属性信息,以实现对各所述节点目录的快照属性信息的更新;
根据所述目录树和所述快照目录的快照属性信息生成快照树。
进一步的,第一执行模块113,具体用于在所述目录树中,将存在所述快照目录的上一级目录标记为中间目录,以获取多个所述中间目录,并根据所述根目录和多个所述中间目录构建所述快照树。
图12为本申请实施例提供的快照配额管理装置的结构示意图二。如图12所示,该装置120包括:
第二获取模块121,用于获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
第二处理模块122,用于将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求。
进一步的,第二获取模块121,具体用于在所述本地元数据库中,根据所述目标元数据对应的目录名称查询获取目录名称相同的元数据,作为初始元数据,并将所述初始元数据更新为所述目标元数据,其中,所述本地元数据库关联存储有目录名称和对应的元数据,所述元数据用于指示各目录的配额;
在检测到全部的客户端更新完成后,向所述元数据管理服务端发送所述快照创建请求,并检测是否获取所述快照树和所述快照属性信息;
若否,则持续检测,直至检测到获取所述快照树和所述快照属性信息;若是,根据所述快照树和所述快照属性信息生成快照判断信号。
进一步的,第二获取模块121,具体用于在所述快照树中,根据所述快照创建请求获取所述快照目录,并在所述本地元数据库中,根据所述快照目录的名称查询获取对应的元数据,作为快照元数据,所述快照元数据用于指示所述快照目录的配额;
检测所述快照目录的快照属性信息指示的快照数量是否大于所述快照元数据,若大于,通过所述快照判断信号指示不允许创建快照;
若不大于,则在所述快照树中,基于所述快照目录的位置路径,逆序遍历所述位置路径上各目录的快照属性信息,并检测各目录的快照属性信息指示的快照数量是否大于各目录对应的元数据,若大于,通过所述快照判断信号指示不允许创建快照,否则通过所述快照判断信号指示允许创建快照。
本实施例提供的快照配额管理装置,可执行上述实施例的快照配额管理方法,其实现原理和技术效果类似,本实施例此处不再赘述。
在前述的快照配额管理装置的具体实现中,各模块可以被实现为处理器,处理器可以执行存储器中存储的计算机执行指令,使得处理器执行上述的快照配额管理方法。
图13为本申请实施例提供的电子设备的结构示意图。如图13所示,该电子设备130包括:至少一个处理器131和存储器132。该电子设备130还包括通信部件133。其中,处理器131、存储器132以及通信部件133通过总线134连接。
在具体实现过程中,至少一个处理器131执行所述存储器132存储的计算机执行指令,使得至少一个处理器131执行如上电子设备侧所执行的快照配额管理方法。
处理器131的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述实施例中,应理解,处理器可以是中央处理单元(英文:CentralProcessing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:DigitalSignal Processor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述针对电子设备以及主控设备所实现的功能,对本发明实施例提供的方案进行了介绍。可以理解的是,电子设备或主控设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,本发明实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的技术方案的范围。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上快照配额管理方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于电子设备或主控设备中。
本申请还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种快照配额管理方法,其特征在于,所述方法应用于元数据管理服务端,包括:
获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求;
根据所述快照创建请求获取快照目录,并获取所述快照目录的快照属性信息,所述快照属性信息用于指示快照数量,根据所述目录树和所述快照属性信息生成快照树,并将所述快照树和所述快照属性信息发送至所述目标客户端,以使所述目标客户端实现快照配额管理。
2.根据权利要求1所述的方法,其特征在于,所述获取所述快照目录的快照属性信息,包括:
将所述快照目录的名称作为快照路径名,根据所述快照路径名计算获取快照目录分片,获取所述快照目录分片的属性信息,并作为所述快照目录的快照属性信息,所述快照目录分片用于指示所述快照目录所处组别;
基于所述快照目录,逆序向上遍历至根目录,以获取多个节点目录,并获取各所述节点目录的快照属性信息与预设值的和值,作为各所述节点目录的新的快照属性信息,以实现对各所述节点目录的快照属性信息的更新;
根据所述目录树和所述快照目录的快照属性信息生成快照树。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目录树和所述快照目录的快照属性信息生成快照树,包括:
在所述目录树中,将存在所述快照目录的上一级目录标记为中间目录,以获取多个所述中间目录,并根据所述根目录和多个所述中间目录构建所述快照树。
4.一种快照配额管理方法,其特征在于,所述方法应用于客户端,包括:
向元数据管理服务端发送扩展属性请求后,获取元数据管理服务端发送的目标元数据,并根据所述目标元数据对本地元数据库进行更新,所述目标元数据用于指示元数据管理服务端中发生扩展的元数据,所述扩展属性请求用于指示客户端发出的配额设置信息;
向所述元数据管理服务端发送快照创建请求后,获取所述元数据管理服务端发送的快照树和快照属性信息,并根据所述快照树和所述快照属性信息生成快照判断信号,所述快照创建请求用于指示快照目录的位置信息,所述快照判断信号用于指示是否允许创建快照。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标元数据对本地元数据库进行更新,包括:
在所述本地元数据库中,根据所述目标元数据对应的目录名称查询获取目录名称相同的元数据,作为初始元数据,并将所述初始元数据更新为所述目标元数据,其中,所述本地元数据库关联存储有目录名称和对应的元数据,所述元数据用于指示各目录的配额;
在检测到全部的客户端更新完成后,向所述元数据管理服务端发送所述快照创建请求,并检测是否获取所述快照树和所述快照属性信息;
若否,则持续检测,直至检测到获取所述快照树和所述快照属性信息;若是,根据所述快照树和所述快照属性信息生成快照判断信号。
6.根据权利要求5所述的方法,其特征在于,所述根据所述快照树和所述快照属性信息生成快照判断信号,包括:
在所述快照树中,根据所述快照创建请求获取所述快照目录,并在所述本地元数据库中,根据所述快照目录的名称查询获取对应的元数据,作为快照元数据,所述快照元数据用于指示所述快照目录的配额;
检测所述快照目录的快照属性信息指示的快照数量是否大于所述快照元数据,若大于,通过所述快照判断信号指示不允许创建快照;
若不大于,则在所述快照树中,基于所述快照目录的位置路径,逆序遍历所述位置路径上各目录的快照属性信息,并检测各目录的快照属性信息指示的快照数量是否大于各目录对应的元数据,若大于,通过所述快照判断信号指示不允许创建快照,否则通过所述快照判断信号指示允许创建快照。
7.一种快照配额管理装置,其特征在于,包括:
第一获取模块,用于获取扩展属性请求,在目录树中,根据所述扩展属性请求获取目标目录和目标属性,并对所述目标目录的元数据扩展所述目标属性,以获取目标元数据,所述目标属性用于指示所述目标目录的配额,所述扩展属性请求用于指示客户端发出的配额设置信息;
第一处理模块,用于将所述目标元数据发送至各所述客户端,以使各所述客户端的目录元数据进行更新后,获取目标客户端发送的快照创建请求;
第一执行模块,用于根据所述快照创建请求获取快照目录,获取所述快照目录的快照属性信息,所述快照属性信息用于指示快照数量,根据所述目录树和所述快照属性信息生成快照树,并将所述快照树和所述快照属性信息发送至所述目标客户端,以使所述目标客户端实现快照配额限制。
8.一种快照配额管理装置,其特征在于,包括:
第二获取模块,用于获取元数据管理服务端发送的目标元数据,并根据所述目标元数据对本地元数据库进行更新,所述目标元数据用于指示元数据管理服务端中发生扩展的元数据;
第二处理模块,用于向所述元数据管理服务端发送快照创建请求后,获取所述元数据管理服务端发送的快照树和快照属性信息,并根据所述快照树和所述快照属性信息生成快照判断信号,所述快照创建请求用于指示快照目录的位置信息,所述快照判断信号用于指示是否允许创建快照。
9.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410264139.0A CN118051476A (zh) | 2024-03-07 | 2024-03-07 | 快照配额管理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410264139.0A CN118051476A (zh) | 2024-03-07 | 2024-03-07 | 快照配额管理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118051476A true CN118051476A (zh) | 2024-05-17 |
Family
ID=91051571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410264139.0A Pending CN118051476A (zh) | 2024-03-07 | 2024-03-07 | 快照配额管理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118051476A (zh) |
-
2024
- 2024-03-07 CN CN202410264139.0A patent/CN118051476A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110489059B (zh) | 数据集群存储的方法、装置及计算机设备 | |
CN104714755B (zh) | 一种快照管理方法及装置 | |
US20200301882A1 (en) | Determining differences between two versions of a file directory tree structure | |
CN109684282B (zh) | 一种构建元数据缓存的方法及装置 | |
CN107368260A (zh) | 基于分布式系统的存储空间整理方法、装置及系统 | |
CN112417036A (zh) | 分布式存储系统中处理对象的元数据的方法及装置 | |
CN111651424B (zh) | 一种数据处理方法、装置、数据节点及存储介质 | |
CN109614559A (zh) | 数据处理方法及装置 | |
CN114780252A (zh) | 数据仓库系统的资源管理方法及装置 | |
CN113051250A (zh) | 数据库集群的扩容方法和装置、电子设备和存储介质 | |
CN111400334A (zh) | 数据处理方法、装置、存储介质及电子装置 | |
CN112241474B (zh) | 信息处理方法、装置和存储介质 | |
CN114089917A (zh) | 分布式对象存储集群及其扩容方法、装置及电子设备 | |
CN116595025B (zh) | 矢量瓦片的动态更新方法、终端和介质 | |
CN118051476A (zh) | 快照配额管理方法、装置、设备及存储介质 | |
CN113590033B (zh) | 一种超融合系统的信息同步方法及装置 | |
CN113076086B (zh) | 元数据管理系统和使用其对模型对象进行建模的方法 | |
CN114840539A (zh) | 数据处理方法、装置、设备和存储介质 | |
EP3995972A1 (en) | Metadata processing method and apparatus, and computer-readable storage medium | |
CN114610740A (zh) | 医疗数据平台的数据版本管理方法及装置 | |
CN110083438B (zh) | 事务分发方法、装置、设备和存储介质 | |
US11977487B2 (en) | Data control device, storage system, and data control method | |
EP4202675A1 (en) | Information processing device, information processing method, and information processing program | |
US9442938B1 (en) | File system layer | |
CN117478699B (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 |