CN117520278A - 一种分布式文件***多客户端高精度目录配额控制方法 - Google Patents
一种分布式文件***多客户端高精度目录配额控制方法 Download PDFInfo
- Publication number
- CN117520278A CN117520278A CN202311591254.0A CN202311591254A CN117520278A CN 117520278 A CN117520278 A CN 117520278A CN 202311591254 A CN202311591254 A CN 202311591254A CN 117520278 A CN117520278 A CN 117520278A
- Authority
- CN
- China
- Prior art keywords
- quota
- directory
- file system
- information
- checking
- 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
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000012795 verification Methods 0.000 claims description 45
- 238000010586 diagram Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 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/17—Details of further file system functions
- G06F16/1727—Details of free space management performed by the file system
-
- 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/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
-
- 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/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式文件***多客户端高精度目录配额控制方法,先创建多个目录配额并将不同目录的配额信息保存到不同元数据服务器中,当多个文件***客户端请求写入数据到目标配额目录时,每个文件***客户端收集自身配额校验信息,然后发送至目标元数据服务器,当目标元数据服务器接收完所有文件***客户端发送的配额校验信息后,依次将所有配额校验信息与目标配额目录的配额信息进行配额校验,各文件***客户端根据配额校验结果将数据写入到存储服务器或者返回错误给用户。本发明方法能够有效减少元数据服务器的负载,避免用户操作客户端时出现误差,其能够避免多客户端并发对同一个目录进行数据操作时写入的目录容量不会超出配额限制阈值。
Description
技术领域
本发明涉及计算机存储技术领域,特别是涉及一种分布式文件***多客户端高精度目录配额控制方法。
背景技术
随着大数据时代的降临,业务应用对存储空间的需求越来越大,单机存储的数据存储能力无法满足当前业务应用的存储需求,因此存储***正朝着分布式方向发展。分布式文件***集群存储***通常包括几十个节点,总存储空间高达上百TB,通常是将这么大的存储空间分配给多个用户同时使用,在分配时是将存储空间以目录的形式分给不同用户使用。
为了防止存储空间被个别用户过度使用,影响其它用户的正常使用,需要使用文件***进行目录配额,对分配给单个用户使用的目录的最大可使用容量进行限制。
如图1所示,图1是现有技术中目录配额方法的实现架构示意图,现有目录配额方法中,用户1通过文件***客户端1对分配的目录进行文件读写等操作;文件***客户端1可以从元数据服务器获取用户1的配额信息,利用配额信息对用户1的数据操作进行监控,统计用户1的操作额度信息,并发送至元数据服务器;元数据服务器,用于根据操作额度信息对用户的配额信息进行更新,并将更新后的配额信息共享至文件***客户端2;用户2通过文件***客户端2进行文件读写等操作时,就会被更新后的配额信息所约束。现有技术中的目录配额方法,通过各文件***客户端同步元数据服务器上的最新的配额信息来实现对单个用户使用的目录的最大可使用容量的限制。
但是,现有技术中的目录配额方法,所有的目录配额信息均保存在一个元数据服务器上,元数据服务器负载较大;并且,可能会出现各文件***客户端未能及时同步元数据服务器上的最新的配额信息,导致用户操作客户端时出现误差;此外,目录配额信息是由元数据服务器保存的,但最终进行配额限制的却是各个客户端,各个客户端所做的数据操作引起的配额信息的变化是无法实时的传递给其它客户端的,当多客户端并发对同一个目录进行数据操作时,会导致目录实际的容量超出配额限制的阈值。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效减少元数据服务器的负载,避免用户操作客户端时出现误差,其能够避免多客户端并发对同一个目录进行数据操作时写入的目录容量不会超出配额限制阈值的分布式文件***多客户端高精度目录配额控制方法。
本发明提供了一种分布式文件***多客户端高精度目录配额控制方法,多个客户端共享多个元数据服务器和多个存储服务器,每个用户均通过一个文件***客户端访问元数据服务器和存储服务器,方法包括:
创建多个目录配额并将不同目录的配额信息保存到不同元数据服务器中;
当多个用户分别通过各自对应文件***客户端请求写入数据到目标配额目录时,每个文件***客户端收集自身配额校验信息;
所有文件***客户端将自身配额校验信息发送至目标元数据服务器,其中,目标元数据服务器为目标配额目录所在元数据服务器;
当目标元数据服务器接收完所有文件***客户端发送的配额校验信息后,目标元数据服务器按照配额校验信息接收顺序,依次将所有配额校验信息与目标配额目录的配额信息进行配额校验,其中,每次进行配额校验时,目标元数据服务器将当前配额校验信息与目标配额目录的配额信息的配额校验结果返回给当前配额校验信息对应的文件***客户端;
各文件***客户端根据配额校验结果将数据写入到存储服务器或者返回错误给用户,其中,配额校验结果为成功时,文件***客户端将数据写入到存储服务器,否则,文件***客户端返回错误给用户。
在其中一个实施例中,创建多个目录配额为对多个不同目录添加配额信息。
在其中一个实施例中,各目录的配额信息包括目录路径、目录所属用户、目录的硬阈值和软阈值。
在其中一个实施例中,配额校验信息包括待写入数据的数据量、所属用户、操作类型以及目标配额目录所在元数据服务器信息。
在其中一个实施例中,每次进行配额校验时,目标元数据服务器对接收到的所有配额校验信息进行加锁,若配额校验成功,在目标配额目录的配额信息增加配额容量后解锁所有配额校验信息,然后将配额校验成功结果返回给当前配额校验的配额校验信息对应的文件***客户端,若配额校验不成功,则直接将配额校验失败结果返回给当前配额校验的配额校验信息对应的文件***客户端。
在其中一个实施例中,配额校验为判断目标配额目录中已有数据的数据量与待写入数据的数据量的和是否超过目标配额目录的的硬阈值,若超过,则配额校验失败,若不超过,配额校验成功。
在其中一个实施例中,分布式文件***设置有配额设置接口,配额设置接口用于创建、删除、修改和查询目录配额。
在其中一个实施例中,根据负载均衡将不同目录的配额信息保存到不同元数据服务器中。
在其中一个实施例中,每个元数据服务器中均设置有配额校验模块,配额校验模块用于将配额校验信息与目标配额目录的配额信息进行配额校验。
本发明的有益效果是:
(1)本发明将不同目录的配额信息保存到不同元数据服务器中,有效减少了单个元数据服务器的负载。
(2)各个文件***客户端不保存目录的配额信息,避免元数据服务器与文件***客户端之间同步信息时的延迟导致误差。
(3)配额校验是在元数据服务器中进行,能够避免一个文件***客户端对目录的配额信息的修改不能及时同步到其它文件***客户端,避免用户操作客户端时出现误差。
(4)每个配额校验信息包括的信息种类一样,多个用户分别通过各自对应文件***客户端请求写入数据到目标配额目录时,目标元数据服务器按照配额校验信息接收顺序,依次将所有配额校验信息与目标配额目录的配额信息进行配额校验,配额校验使用统一且实时的配额校验信息进行,既能够保证每个文件***客户端配额校验信息的准确性,又能够保证数据写入后目标配额目录的容量不会超出配额限制阈值。
附图说明
图1是现有技术中目录配额方法的实现架构示意图;
图2是本发明的分布式文件***的架构示意图;
图3是本发明实施例提供的一种分布式文件***多客户端高精度目录配额控制方法的流程示意图之一;
图4是本发明实施例提供的一种配额校验流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图2所示,图2是本发明的分布式文件***的架构示意图,本发明的分布式文件***包括多个客户端共享多个元数据服务器和多个存储服务器,每个用户均通过一个文件***客户端访问元数据服务器和存储服务器。
在一个实施例中,如图3所示,图3是本发明实施例提供的一种分布式文件***多客户端高精度目录配额控制方法的流程示意图之一,本实施例的一种分布式文件***多客户端高精度目录配额控制方法包括:
S301、创建多个目录配额并将不同目录的配额信息保存到不同元数据服务器中。
本实施例中,创建多个目录配额为对多个不同目录添加配额信息,已添加配额信息的目录称为配额目录。各目录的配额信息包括目录路径、目录所属用户、目录的硬阈值和软阈值,目录的硬阈值为目录中存放数据的最大容量。
将不同目录的配额信息保存到不同元数据服务器中,能够有效减少单个元数据服务器的负载,并且目录的配额信息保存在元数据服务器而不是保存在各个文件***客户端中,能够避免元数据服务器与文件***客户端之间同步信息时的延迟导致误差。
S302、当多个用户分别通过各自对应文件***客户端请求写入数据到目标配额目录时,每个文件***客户端收集自身配额校验信息。
配额目录指的是已添加配额信息的目录。
本实施例中,配额校验信息包括待写入数据的数据量、所属用户、操作类型以及目标配额目录所在元数据服务器信息。每个文件***客户端收集自身配额校验信息的种类都是一致的,具有统一性。
S303、所有文件***客户端将自身配额校验信息发送至目标元数据服务器,其中,目标元数据服务器为目标配额目录所在元数据服务器。
S304、当目标元数据服务器接收完所有文件***客户端发送的配额校验信息后,目标元数据服务器按照配额校验信息接收顺序,依次将所有配额校验信息与目标配额目录的配额信息进行配额校验,其中,每次进行配额校验时,目标元数据服务器将当前配额校验信息与目标配额目录的配额信息的配额校验结果返回给当前配额校验信息对应的文件***客户端。
每次进行配额校验时,都是根据文件***客户端发送的实时配额校验信息进行校验,且配额校验信息具有统一性,既保证了每个文件***客户端发送的配额校验信息的准确性,又保证了数据写入后目标配额目录的容量不会超出配额限制阈值。
配额校验是在元数据服务器中进行,能够避免一个文件***客户端对目录的配额信息的修改不能及时同步到其它文件***客户端,避免用户操作客户端时出现误差。
本实施例中,配额校验为判断目标配额目录中已有数据的数据量与待写入数据的数据量的和是否超过目标配额目录的的硬阈值,若超过,则配额校验失败,若不超过,配额校验成功。
S305、各文件***客户端根据配额校验结果将数据写入到存储服务器或者返回错误给用户,其中,配额校验结果为成功时,文件***客户端将数据写入到存储服务器,否则,文件***客户端返回错误给用户。
在其中一个实施例中,每次进行配额校验时,目标元数据服务器对接收到的所有配额校验信息进行加锁,若配额校验成功,在目标配额目录的配额信息增加配额容量后解锁所有配额校验信息,然后将配额校验成功结果返回给当前配额校验的配额校验信息对应的文件***客户端,若配额校验不成功,则直接将配额校验失败结果返回给当前配额校验的配额校验信息对应的文件***客户端。
在其中一个实施例中,每个元数据服务器中均设置有配额校验模块,配额校验模块用于将配额校验信息与目标配额目录的配额信息进行配额校验。
需要说明的是,本实施例中的配额校验模块也适用于单用户通过文件***客户端向元数据服务器中进行数据写入时的配额校验,直接将单用户的文件***客户端的配额校验信息与元数据服务器中的目标配额目录的配额信息进行校验,校验成功,单用户的文件***客户端将用户请求写入的数据写入到目标配额目录,失败则将配额失败结果返回给文件***客户端。
在一个实施例中,对目录配额校验流程进行举例说明。例如,用户1和用户2同时通过各自对应文件***客户端1和2请求写入数据到元数据服务器1中的目标配额目录,其目录配额校验流程如图4所示,图4是本发明实施例提供的一种配额校验流程示意图。在元数据服务器1接收到文件***客户端1和2发送的配额校验信息后,在元数据服务器上的配额校验模块中按照接收配额校验信息的顺序依次进行配额校验,配额校验信息1配额校验成功,文件***客户端1将数据写入到存储服务器,配额校验信息2配额校验失败,数据写入失败,将失败结果返回给文件***客户端2,文件***客户端2返回错误给用户2。
在一个实施例中,配额校验为判断目标配额目录中已有数据的数据量与待写入数据的数据量的和是否超过目标配额目录的的硬阈值,若超过,则配额校验失败,若不超过,配额校验成功。
在其中一个实施例中,分布式文件***设置有配额设置接口,配额设置接口用于创建、删除、修改和查询目录配额。用户对任意目录配额的增删改查等操作都会在操作完成前实时同步给所有客户端,用来保证所有文件***客户端都保存最新的配额信息。
在一个实施例中,根据负载均衡将不同目录的配额信息保存到不同元数据服务器中。
具体的,负载均衡指的是尽可能使每个元数据服务器中目录的配额保持一致,即能够保存的数据量一致。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明的保护范围应以所附权利要求为准。
Claims (9)
1.一种分布式文件***多客户端高精度目录配额控制方法,其特征在于,多个客户端共享多个元数据服务器和多个存储服务器,每个用户均通过一个文件***客户端访问元数据服务器和存储服务器,所述方法包括:
创建多个目录配额并将不同目录的配额信息保存到不同元数据服务器中;
当多个用户分别通过各自对应文件***客户端请求写入数据到目标配额目录时,每个文件***客户端收集自身配额校验信息;
所有文件***客户端将自身配额校验信息发送至目标元数据服务器,其中,所述目标元数据服务器为目标配额目录所在元数据服务器;
当目标元数据服务器接收完所有文件***客户端发送的配额校验信息后,目标元数据服务器按照配额校验信息接收顺序,依次将所有配额校验信息与目标配额目录的配额信息进行配额校验,其中,每次进行配额校验时,目标元数据服务器将当前配额校验信息与目标配额目录的配额信息的配额校验结果返回给当前配额校验信息对应的文件***客户端;
各文件***客户端根据配额校验结果将数据写入到存储服务器或者返回错误给用户,其中,配额校验结果为成功时,文件***客户端将数据写入到存储服务器,否则,文件***客户端返回错误给用户。
2.根据权利要求1所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,创建多个目录配额为对多个不同目录添加配额信息。
3.根据权利要求2所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,各目录的配额信息包括目录路径、目录所属用户、目录的硬阈值和软阈值。
4.根据权利要求3所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,所述配额校验信息包括待写入数据的数据量、所属用户、操作类型以及目标配额目录所在元数据服务器信息。
5.根据权利要求4所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,每次进行配额校验时,目标元数据服务器对接收到的所有配额校验信息进行加锁,若配额校验成功,在目标配额目录的配额信息增加配额容量后解锁所有配额校验信息,然后将配额校验成功结果返回给当前配额校验的配额校验信息对应的文件***客户端,若配额校验不成功,则直接将配额校验失败结果返回给当前配额校验的配额校验信息对应的文件***客户端。
6.根据权利要求5所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,配额校验为判断目标配额目录中已有数据的数据量与待写入数据的数据量的和是否超过目标配额目录的的硬阈值,若超过,则配额校验失败,若不超过,配额校验成功。
7.根据权利要求1至6任意一项所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,分布式文件***设置有配额设置接口,所述配额设置接口用于创建、删除、修改和查询目录配额。
8.根据权利要求7所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,根据负载均衡将不同目录的配额信息保存到不同元数据服务器中。
9.根据权利要求8所述的分布式文件***多客户端高精度目录配额控制方法,其特征在于,每个元数据服务器中均设置有配额校验模块,所述配额校验模块用于将配额校验信息与目标配额目录的配额信息进行配额校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311591254.0A CN117520278A (zh) | 2023-11-27 | 2023-11-27 | 一种分布式文件***多客户端高精度目录配额控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311591254.0A CN117520278A (zh) | 2023-11-27 | 2023-11-27 | 一种分布式文件***多客户端高精度目录配额控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117520278A true CN117520278A (zh) | 2024-02-06 |
Family
ID=89751059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311591254.0A Pending CN117520278A (zh) | 2023-11-27 | 2023-11-27 | 一种分布式文件***多客户端高精度目录配额控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117520278A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118034611A (zh) * | 2024-04-09 | 2024-05-14 | 联想凌拓科技有限公司 | 用于对文件的配额进行管理的方法、装置、设备及介质 |
-
2023
- 2023-11-27 CN CN202311591254.0A patent/CN117520278A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118034611A (zh) * | 2024-04-09 | 2024-05-14 | 联想凌拓科技有限公司 | 用于对文件的配额进行管理的方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11153380B2 (en) | Continuous backup of data in a distributed data store | |
CN101334797B (zh) | 一种分布式文件***及其数据块一致性管理的方法 | |
US11301433B2 (en) | Metadata journal in a distributed storage system | |
US7685459B1 (en) | Parallel backup | |
US9547706B2 (en) | Using colocation hints to facilitate accessing a distributed data storage system | |
CN108762668B (zh) | 一种处理写入冲突的方法及装置 | |
CN112084258A (zh) | 一种数据同步方法和装置 | |
US11409711B2 (en) | Barriers for dependent operations among sharded data stores | |
CN111177143B (zh) | 键值数据存储方法、装置、存储介质与电子设备 | |
US12013758B2 (en) | Methods and systems for power failure resistance for a distributed storage system | |
CN117520278A (zh) | 一种分布式文件***多客户端高精度目录配额控制方法 | |
CN113806300B (zh) | 数据存储方法、***、装置、设备及存储介质 | |
CN113051102B (zh) | 文件备份方法、装置、***、存储介质和计算机设备 | |
CN111399760B (zh) | Nas集群元数据处理方法、装置、nas网关及介质 | |
CN115756955A (zh) | 一种数据备份、数据恢复的方法、装置及计算机设备 | |
CN109726211B (zh) | 一种分布式时序数据库 | |
US20100043010A1 (en) | Data processing method, cluster system, and data processing program | |
CN114490540B (zh) | 数据存储方法、介质、装置和计算设备 | |
CN112711606A (zh) | 数据库访问方法、装置、计算机设备和存储介质 | |
CN110442573A (zh) | 一种分布式容错键值存储的方法及装置 | |
CN115390754A (zh) | 一种硬盘管理方法及装置 | |
CN116594551A (zh) | 一种数据存储方法及装置 | |
CN111221857B (zh) | 从分布式***中读数据记录的方法和装置 | |
CN114930315A (zh) | 基于更新的变更提要处理删除请求 | |
CN111399753A (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 |