CN112000280A - 一种配额管控方法及系统 - Google Patents
一种配额管控方法及系统 Download PDFInfo
- Publication number
- CN112000280A CN112000280A CN202010751168.1A CN202010751168A CN112000280A CN 112000280 A CN112000280 A CN 112000280A CN 202010751168 A CN202010751168 A CN 202010751168A CN 112000280 A CN112000280 A CN 112000280A
- Authority
- CN
- China
- Prior art keywords
- quota
- storage system
- space
- target user
- target
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000012545 processing Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 14
- 238000007726 management method Methods 0.000 description 13
- 230000003247 decreasing effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000013475 authorization Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种配额管控方法及系统,该方法包括:如果目标用户需要申请存储系统中的空间配额,则目标客户端向所述存储系统申请所述目标用户所需空间配额;其中,所述目标客户端为任一内核客户端,所述目标用户为所述目标客户端包含的任一用户;所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于所述目标用户对应配额阈值,则为所述目标用户分配所需空间配额,否则,为所述目标用户分配所述目标用户对应配额阈值及所述目标用户已占用空间配额的差值的空间配额。本申请能够实现对配额空间的有效管控,同时提高存储系统的访问效率。
Description
技术领域
本发明涉及存储系统技术领域,更具体地说,涉及一种配额管控方法及系统。
背景技术
对于高性能海量数据存储,多用户访问是必然趋势,而这也是分布式存储系统(可简称为存储系统)的一大特点,因此,对于多用户的空间配额的有效管控则是当前需要解决的一大问题。
发明内容
本发明的目的是提供一种配额管控方法及系统,能够实现对配额空间的有效管控,同时提高存储系统的访问效率。
为了实现上述目的,本发明提供如下技术方案:
一种配额管控方法,包括:
如果目标用户需要申请存储系统中的空间配额,则目标客户端向所述存储系统申请所述目标用户所需空间配额;其中,所述目标客户端为任一内核客户端,所述目标用户为所述目标客户端包含的任一用户;
所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于所述目标用户对应配额阈值,则为所述目标用户分配所需空间配额,否则,为所述目标用户分配所述目标用户对应配额阈值及所述目标用户已占用空间配额的差值的空间配额。
优选的,所述存储系统为所述目标用户分配相应空间配额之后,还包括:
所述目标用户基于所述存储系统分配的空间配额实现访问操作,如果访问操作完成后所述目标用户已占用空间配额发生变化,则所述目标客户端将相应的配额更新信息发送至所述存储系统;
所述存储系统基于接收的配额更新信息对空间配额占用信息进行更新。
优选的,所述目标客户端将相应的配额更新信息发送至所述存储系统之前,还包括:
所述目标客户端判断所述目标用户已占用空间配额发生变化后及发生变化前的差值,如果该差值达到配额更新阈值,则执行将相应的配额更新信息发送至所述存储系统的步骤,否则,将相应的配额更新信息存储到处理队列中,并定时将所述处理队列中的配额更新信息发送至所述存储系统中。
优选的,所述存储系统为所述目标用户分配相应空间配额之后,还包括:
所述目标客户端对分配给所述目标用户的空间配额进行实时监控,如果其中存在自分配给所述目标用户后的预设时长内未被访问的空间配额,则判断该未被访问的空间配额是否达到所述配额更新阈值,如果是,则将相应的配额更新信息发送至所述存储系统,否则,将相应的配额更新信息存储到所述处理队列中。
优选的,所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和之前,还包括:
所述存储系统判断配额管控开关是否开启,如果是,则执行所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和的步骤,如果否,则所述存储系统直接为所述目标用户分配所述目标用户所需空间配额。
优选的,所述目标客户端向所述存储系统申请所述目标用户所需空间配额之前,还包括:
所述目标客户端获取所述存储系统中存储的配置信息,并将其中与自身包含的各用户对应的配额阈值进行存储。
优选的,所述目标用户基于所述存储系统分配的空间配额实现访问操作之后,还包括:
如果访问操作完成后所述目标用户已占用空间配额发生变化,则所述目标客户端将本地存储的配额字段的值更新为所述目标用户已占用空间配额发生的变化对应的值;并在将对应的配额更新信息发送至所述存储系统前,利用配额锁锁定所述配额字段,以禁止其他终端对所述配额字段的值进行修改。
优选的,还包括:
如果所述存储系统存储的配置信息发生变化,则将发生变化后的配置信息进行广播,以指示各所述目标客户端基于广播的配置信息对本地存储的各用户对应的配额阈值进行更新。
优选的,所述目标客户端存储与自身包含的各用户对应的配额阈值,包括:
所述目标客户端利用红黑树存储与自身包含的各用户对应的配额阈值。
一种配额管控系统,包括目标客户端及存储系统;
所述目标客户端,用于:如果目标用户需要申请存储系统中的空间配额,则向所述存储系统申请所述目标用户所需空间配额;其中,所述目标客户端为任一内核客户端,所述目标用户为所述目标客户端包含的任一用户;
所述存储系统,用于:计算所述目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于所述目标用户对应配额阈值,则为所述目标用户分配所需空间配额,否则,为所述目标用户分配所述目标用户对应配额阈值及所述目标用户已占用空间配额的差值的空间配额。
本发明提供了一种配额管控方法及系统,该方法包括:如果目标用户需要申请存储系统中的空间配额,则目标客户端向所述存储系统申请所述目标用户所需空间配额;其中,所述目标客户端为任一内核客户端,所述目标用户为所述目标客户端包含的任一用户;所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于所述目标用户对应配额阈值,则为所述目标用户分配所需空间配额,否则,为所述目标用户分配所述目标用户对应配额阈值及所述目标用户已占用空间配额的差值的空间配额。本申请用户在需要空间配额实现访问时可以通过所在内核客户端向存储系统申请空间配额,存储系统在得到申请后如果为其分配相应空间配额后不会超出用户所能使用的最大的空间配额,则为其分配所需的空间分配,否则,只为其分配在为其分配相应空间配额后不会超出用户所能使用的最大的空间配额时能够为其分配的空间配额,从而保证为用户分配相应的空间配额后,用户所占用及分配的空间配额的总和不超过其所能使用的最大的空间配额,实现对配额空间的有效管控;并且,通过内核客户端对配额实现管控能够有效绕过用户态的系统调用,无需像用户态的系统调用时进行用户态及内核态的频繁切换,从而提高存储系统的访问效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种配额管控方法的流程图;
图2为本发明实施例提供的一种配额管控系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提供的一种配额管控方法的流程图,可以包括:
S11:如果目标用户需要申请存储系统中的空间配额,则目标客户端向存储系统申请目标用户所需空间配额;其中,目标客户端为任一内核客户端,目标用户为目标客户端包含的任一用户。
其中,存储系统可以为分布式存储系统,当然也可以为其他需要实现空间配额的管理的存储系统,均在本发明的保护范围之内;为任一用户分配相应的空间配额后,该任一用户能够使用被分配的空间配额的存储空间。如果用户需要使用存储系统中的存储空间,则需要先向存储系统申请相应的空间配额,具体来说,可以是用户所在的内核客户端向存储系统申请相应的空间配额,从而通过内核客户端实现与存储系统的交互。
需要说明的是,内核客户端可以是集成在存储系统中的内核客户端,也可以是独立于存储系统的内核客户端,如果是集成在存储系统中的内核客户端,则直接在内核客户端中创建用户即可,如果是独立于存储系统的内核客户端,则需要先在存储系统及内核客户端之间建立用户访问,进而实现两者之间的交互。其中,在存储系统及内核客户端之间建立用户访问可以包括:(1)存储系统创建用户test1;(2)内核客户端创建用户test1且指定用户所属的用户组与存储系统创建的用户所属用户组一致,此时内核客户端与存储系统的用户访问建立;(3)将存储系统挂载到内核客户端的挂载点。
内核客户端可以存储有其包含的每个用户的用户标识,进而在内核客户端向存储系统申请用户所需空间配额时,可以先通过current_uid从本地获取需要申请空间配额的用户的用户标识(如用户ID),然后向存储系统发送包含用户标识及需要申请的空间配额的值的请求。其中,存储系统的元数据服务器中也可以存储有各个内核客户端包含的各个用户的用户标识,因此内核客户端如果在本地获取所需用户标识时失败,则可以向存储系统的元数据服务器发送消息请求获取所需用户标识。另外,如果用户需要实现写入操作,则内核客户端在向存储系统申请空间配额时,申请的空间配额的值可以遵循根据实际需要设定的一定算法,一般为稍大于写入操作需要占用的空间的值,并且如果需要持续进行写入操作,则申请的空间配额的值可以为当前次写入操作需要占用的空间的倍数等,也可以根据实际需要进行其他设定,均在本发明的保护范围之内。
S12:存储系统计算目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于目标用户对应配额阈值,则为目标用户分配所需空间配额,否则,为目标用户分配目标用户对应配额阈值及目标用户已占用空间配额的差值的空间配额。
具体来说,在创建用户时可以为每个用户设置相应的配额阈值,也即为能够为该用户分配的最大的存储空间的值。存储系统响应内核客户端的申请,可以将用户已经占用的空间配额与当前所需的空间配额相加所得总和与用户对应的配额阈值进行比对,如果总和不大于配额阈值,则说明用户得到所需空间配额后未达到其所能使用的最大存储空间值,因此为其分配所需空间配额,否则,则仅将能够分配给其的空间配额分配给用户即可;从而通过这种方式实现对空间配额的管控。
本申请用户在需要空间配额实现访问时可以通过所在内核客户端向存储系统申请空间配额,存储系统在得到申请后如果为其分配相应空间配额后不会超出用户所能使用的最大的空间配额,则为其分配所需的空间分配,否则,只为其分配在为其分配相应空间配额后不会超出用户所能使用的最大的空间配额时能够为其分配的空间配额,从而保证为用户分配相应的空间配额后,用户所占用及分配的空间配额的总和不超过其所能使用的最大的空间配额,实现对配额空间的有效管控;并且,通过内核客户端对配额实现管控能够有效绕过用户态的系统调用,无需像用户态的系统调用时进行用户态及内核态的频繁切换,从而提高存储系统的访问效率。
本发明实施例提供的一种配额管控方法,存储系统为目标用户分配相应空间配额之后,还可以包括:
目标用户基于存储系统分配的空间配额实现访问操作,如果访问操作完成后目标用户已占用空间配额发生变化,则目标客户端将相应的配额更新信息发送至存储系统;
存储系统基于接收的配额更新信息对空间配额占用信息进行更新。
其中,空间配额占用信息具体可以是存储于存储系统的元数据服务器中,而空间配额占用信息可以包括存储系统包含的全部存储空间已被占用的总的存储空间的空间配额及未被占用的总的存储空间的空间配额,还可以同时包括每个内核客户端中每个用户占用的存储空间的空间配额。用户基于存储系统分配的空间配额可以实现对对应存储空间的访问,在访问完成后,如果用户已占用空间发生了变化,则可以将表示该变化的配额更新信息发送至存储系统,从而使得存储系统对存储的空间配额占用信息进行更新,使得空间配额占用信息符合用户已占用空间发生变化后的情况。通过这种方式实现元数据服务器中相应信息的更新,方便对其进行相应的查询及使用等操作。
另外,用户已占用空间配额发生变化的情况包括用户实现写入操作、删除操作(删除操作如rm删除等)及修改操作等导致的占用的空间配额的变化。
本发明实施例提供的一种配额管控方法,目标客户端将相应的配额更新信息发送至存储系统之前,还可以包括:
目标客户端判断目标用户已占用空间配额发生变化后及发生变化前的差值,如果该差值达到配额更新阈值,则执行将相应的配额更新信息发送至存储系统的步骤,否则,将相应的配额更新信息存储到处理队列中,并定时将处理队列中的配额更新信息发送至存储系统中。
处理队列可以为预先设置的用于存储相应配额更新信息的队列;为了避免频繁向存储系统发送配额更新信息进而导致配额更新信息需要频繁更新,本申请可以判断用户占用空间配额发生变化的量是不是达到根据实际需要设定的阈值,如果是,则说明用户占用空间配额发生变化的量足够多,因此将对应配额更新信息发送至存储系统中,否则,则将其存储到处理队列中,进而定时对处理队列中的配额更新信息进行处理,从而达到合并对应变化的量较小的配额更新信息及对应更新操作的合并。
本发明实施例提供的一种配额管控方法,存储系统为目标用户分配相应空间配额之后,还可以包括:
目标客户端对分配给目标用户的空间配额进行实时监控,如果其中存在自分配给目标用户后的预设时长内未被访问的空间配额,则判断该未被访问的空间配额是否达到配额更新阈值,如果是,则将相应的配额更新信息发送至存储系统,否则,将相应的配额更新信息存储到处理队列中。
对于分配给用户的全部的空间配额,可以实时对其进行监控,从而如果存在用户在得到空间配额后的根据实际需要设定的一定时间内未对其进行访问的空间配额,则说明这部分空间配额很可能不会被用户使用,因此通过判断变化的量的方式对该部分空间配额进行判断,在这部分空间配额的量足够大时直接通知存储系统,存储系统会将这部分空间配额作为未被占用的空间配额进行回收,在这部分空间配额的量不够大时将对应配额更新信息存储至处理队列中;从而通过这种方式不仅避免了频繁的信息发送及信息更新,且能够使得很大可能上不会被用户占用的空间配额及时回收,保证了存储系统中有充足的空间配额供使用。
本发明实施例提供的一种配额管控方法,存储系统计算目标用户已占用空间配额及所需空间配额的总和之前,还可以包括:
存储系统判断配额管控开关是否开启,如果是,则执行存储系统计算目标用户已占用空间配额及所需空间配额的总和的步骤,如果否,则存储系统直接为目标用户分配目标用户所需空间配额。
如果存储系统中的存储空间足够多,则可以不设置每个用户对应的配额阈值,进而通过设置配额管控开关为关闭,从而不进行存储系统计算用户已占用空间配额及所需空间配额的总和的计算及后续步骤,因此直接为用户分配其所需的空间配额,如果存储系统中的存储空间需要限制使用的存储空间的量,则存储系统计算用户已占用空间配额及所需空间配额的总和的计算及后续步骤,从而根据实际需要实现不同方案的灵活设置,进而使得所实现方案符合当前场景需求。
本发明实施例提供的一种配额管控方法,目标客户端向存储系统申请目标用户所需空间配额之前,还可以包括:
目标客户端获取存储系统中存储的配置信息,并将其中与自身包含的各用户对应的配额阈值进行存储。
需要说明的是,配置信息具体可以存储于存储系统的元数据服务器中,且配置信息中可以包括为每个内核客户端的每个用户设置的配额阈值,进而内核客户端可以获取存储系统中存储的配置信息,将其中与自身包含的每个用户对应的配额阈值进行存储,从而用户在需要向存储系统申请相应的空间配额时,可以先由所在内核客户端获取对应的配额阈值,进而基于此确定此次需要申请的空间配额,避免申请的空间配额与已占用空间配额超过对应配额阈值的情况。另外,可以是将存储系统挂载到内核客户端的挂载点的挂载流程中,内核客户端向存储系统的元数据服务器发消息来获取存储系统所有用户的配置信息,进而解析信息后将对应的配额阈值存于内核本地结构;具体来说,目标客户端存储与自身包含的各用户对应的配额阈值,可以包括:目标客户端利用红黑树存储与自身包含的各用户对应的配额阈值;即,本申请可以利用红黑树实现配额阈值的存储,从而方便实现配额阈值的快速获取。
本发明实施例提供的一种配额管控方法,目标用户基于存储系统分配的空间配额实现访问操作之后,还可以包括:
如果访问操作完成后目标用户已占用空间配额发生变化,则目标客户端将本地存储的配额字段的值更新为目标用户已占用空间配额发生的变化对应的值;并在将对应的配额更新信息发送至存储系统前,利用配额锁锁定配额字段,以禁止其他终端对配额字段的值进行修改。
另外需要说明的是,内核客户端还可以在本地存储两个配额字段,分别为增空间配额字段及减空间配额字段,如果已占用空间配额增加了,则将增空间配额字段的值设为1,否则增空间配额字段的值为0,如果已占用空间配额减少了,则将减空间配额字段的值设为1,否则减空间配额字段的值为0,从而通过配额字段的值即可方便的获知当前用户已占用空间配额是否发生变化;并且,如果变化的量达到配额更新阈值,则直接通知存储系统进行信息更新,因此将上述配额字段均设置为0,如果未达到配额更新阈值,则将上述对应配额字段设置为1,从而通过配额字段即可确定是否需要将相应的配额更新信息加入至任务处理队列中。另外,为了避免其他终端对配额字段的值进行修改导致无法实现相应配额更新信息的有效处理,本申请在将对应配额更新信息发送给存储系统前,还可以利用配额锁对配额字段进行锁定,以禁止其他的终端对该配额字段进行修改。
本发明实施例提供的一种配额管控方法,还可以包括:
如果存储系统存储的配置信息发生变化,则将发生变化后的配置信息进行广播,以指示各目标客户端基于广播的配置信息对本地存储的各用户对应的配额阈值进行更新。
如果存储系统对配置信息进行了重设,因此存储系统或者是存储系统的元数据服务器可以广播配置信息,从而使得内核客户端基于此对本地存储的配额阈值进行更新,使得其与最新的配置信息中的配额阈值相同,从而便于实现各个内核客户端中各个用户对应配额阈值的更新。
另外,如果多个内核客户端的多个客户并发访问存储系统,还可以将其所需的全部数据进行广播,从而使得每个内核客户端及每个内核客户端从中获取自身所需的数据。
在一种具体实现方式中,本申请公开的配额管控方法可以包括:
1.集成在存储系统的内核客户端无需做用户访问建立,独立于存储系统的内核客户端需要建立用户访问,这里以独立于存储系统的内核客户端介绍当前用户可持有空间配额的获取:
(1)存储系统创建用户test1并对test1分配配额阈值
(2)内核客户端侧创建用户test1且指定用户组与存储系统test1用户所属用户组一致,此时内核客户端与存储系统的用户访问建立;
(3)将存储系统挂载到内核客户端的挂载点,挂载流程中向存储系统的元数据服务器发消息来获取存储系统所有用户的配置信息,并将信息解析得到与自身包含的用户对应配额阈值存于内核本地结构,这里用红黑树实现;
(4)内核客户端读取配额阈值,可以基于用户ID从本地获取,获取失败则向存储系统的元数据服务器发消息请求获取。
2.用户空间配额的使用
(1)在数据写入等数据操作流程中加入配额管控开关,开启的时候进入用户配额管控流程;
(2)在内核客户端的数据访问流程中通过current_uid获取当前需要申请空间配额的用户的用户ID,对于写入操作就向存储系统申请配额,此申请量可遵循一定算法,持续写入时可是需求量的倍数等;存储系统返回应答配额授权量(即分配给用户的空间配额),内核客户端收到后完成写入操作;
(3)写入完成可以向存储系统元数据服务器更新上报使用量(占用空间配额发生变化的量);
(4)写入完成剩余的配额若一定时间未使用则归还给存储系统的元数据服务器。
3.内核客户端配额更新和归还机制
(1)定量更新
在数据写入等操作时进行更新也就是定量更新上报处理,在rm删除等操作时进行归还处理,此处理都是通过本地使用量的变化值发消息给存储系统元数据服务器,元数据服务器做使用量(占用空间配额)和剩余量(未占用空间配额)的更新处理;在内核客户端卸载时将内核客户端中全部用户占用的全部空间配额对应信息发送给元数据服务器,以使得元数据服务器基于此对配额占用信息进行更新,从而实现配额归还。
(2)定时上报
内核客户端挂载生效时启动内核线程work,持续对用户分配的空间配额进行监控,从而在达到一定条件(分配后一定时长内未被访问)则对空间配额进行定时更新和归还,并发处理配额数据锁来维护。另外还可以用归还锁对实现定量更新及定时上报的程序分别进行锁定,以免被终止等。
4.多内核客户端的广播应用机制:
当多内核客户端多用户并发访问时需要存储系统进行广播相应的数据,且,当对配置信息进行重设时,存储系统的元数据服务器需要广播消息,此时内核客户端收到后对消息解析获取配额阈值的最新信息更新到本地。
本申请通过内核客户端来对用户配额进行使用管理,能有效绕过用户态的系统调用等调用访问,提高读写效率,提升数据存储效率以及用户体验;且实现方式简单,只需在数据访问流程中获取用户ID,然后植入用户配额处理流程即可。
本发明实施例还提供了一种配额管控系统,如图2所示,可以包括目标客户端11及存储系统12;其中:
目标客户端11,用于:如果目标用户需要申请存储系统12中的空间配额,则向存储系统12申请目标用户所需空间配额;其中,目标客户端11为任一内核客户端,目标用户为目标客户端11包含的任一用户;
存储系统12,用于:计算目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于目标用户对应配额阈值,则为目标用户分配所需空间配额,否则,为目标用户分配目标用户对应配额阈值及目标用户已占用空间配额的差值的空间配额。
需要说明的是,本发明实施例提供的一种配额管控系统中相关部分的说明请参见本发明实施例提供的一种配额管控方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种配额管控方法,其特征在于,包括:
如果目标用户需要申请存储系统中的空间配额,则目标客户端向所述存储系统申请所述目标用户所需空间配额;其中,所述目标客户端为任一内核客户端,所述目标用户为所述目标客户端包含的任一用户;
所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于所述目标用户对应配额阈值,则为所述目标用户分配所需空间配额,否则,为所述目标用户分配所述目标用户对应配额阈值及所述目标用户已占用空间配额的差值的空间配额。
2.根据权利要求1所述的方法,其特征在于,所述存储系统为所述目标用户分配相应空间配额之后,还包括:
所述目标用户基于所述存储系统分配的空间配额实现访问操作,如果访问操作完成后所述目标用户已占用空间配额发生变化,则所述目标客户端将相应的配额更新信息发送至所述存储系统;
所述存储系统基于接收的配额更新信息对空间配额占用信息进行更新。
3.根据权利要求2所述的方法,其特征在于,所述目标客户端将相应的配额更新信息发送至所述存储系统之前,还包括:
所述目标客户端判断所述目标用户已占用空间配额发生变化后及发生变化前的差值,如果该差值达到配额更新阈值,则执行将相应的配额更新信息发送至所述存储系统的步骤,否则,将相应的配额更新信息存储到处理队列中,并定时将所述处理队列中的配额更新信息发送至所述存储系统中。
4.根据权利要求3所述的方法,其特征在于,所述存储系统为所述目标用户分配相应空间配额之后,还包括:
所述目标客户端对分配给所述目标用户的空间配额进行实时监控,如果其中存在自分配给所述目标用户后的预设时长内未被访问的空间配额,则判断该未被访问的空间配额是否达到所述配额更新阈值,如果是,则将相应的配额更新信息发送至所述存储系统,否则,将相应的配额更新信息存储到所述处理队列中。
5.根据权利要求4所述的方法,其特征在于,所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和之前,还包括:
所述存储系统判断配额管控开关是否开启,如果是,则执行所述存储系统计算所述目标用户已占用空间配额及所需空间配额的总和的步骤,如果否,则所述存储系统直接为所述目标用户分配所述目标用户所需空间配额。
6.根据权利要求5所述的方法,其特征在于,所述目标客户端向所述存储系统申请所述目标用户所需空间配额之前,还包括:
所述目标客户端获取所述存储系统中存储的配置信息,并将其中与自身包含的各用户对应的配额阈值进行存储。
7.根据权利要求6所述的方法,其特征在于,所述目标用户基于所述存储系统分配的空间配额实现访问操作之后,还包括:
如果访问操作完成后所述目标用户已占用空间配额发生变化,则所述目标客户端将本地存储的配额字段的值更新为所述目标用户已占用空间配额发生的变化对应的值;并在将对应的配额更新信息发送至所述存储系统前,利用配额锁锁定所述配额字段,以禁止其他终端对所述配额字段的值进行修改。
8.根据权利要求7所述的方法,其特征在于,还包括:
如果所述存储系统存储的配置信息发生变化,则将发生变化后的配置信息进行广播,以指示各所述目标客户端基于广播的配置信息对本地存储的各用户对应的配额阈值进行更新。
9.根据权利要求8所述的方法,其特征在于,所述目标客户端存储与自身包含的各用户对应的配额阈值,包括:
所述目标客户端利用红黑树存储与自身包含的各用户对应的配额阈值。
10.一种配额管控系统,其特征在于,包括目标客户端及存储系统;
所述目标客户端,用于:如果目标用户需要申请存储系统中的空间配额,则向所述存储系统申请所述目标用户所需空间配额;其中,所述目标客户端为任一内核客户端,所述目标用户为所述目标客户端包含的任一用户;
所述存储系统,用于:计算所述目标用户已占用空间配额及所需空间配额的总和,如果该总和不大于所述目标用户对应配额阈值,则为所述目标用户分配所需空间配额,否则,为所述目标用户分配所述目标用户对应配额阈值及所述目标用户已占用空间配额的差值的空间配额。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751168.1A CN112000280A (zh) | 2020-07-30 | 2020-07-30 | 一种配额管控方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751168.1A CN112000280A (zh) | 2020-07-30 | 2020-07-30 | 一种配额管控方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112000280A true CN112000280A (zh) | 2020-11-27 |
Family
ID=73463321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010751168.1A Withdrawn CN112000280A (zh) | 2020-07-30 | 2020-07-30 | 一种配额管控方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112000280A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598649A (zh) * | 2022-03-17 | 2022-06-07 | 苏州浪潮智能科技有限公司 | 内核带宽管理方法、装置、存储设备及存储介质 |
CN115242818A (zh) * | 2022-07-22 | 2022-10-25 | 济南浪潮数据技术有限公司 | 一种配额管理方法、装置、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326013A (zh) * | 2016-08-25 | 2017-01-11 | 浪潮(北京)电子信息产业有限公司 | 一种分布式文件系统的磁盘配额管理系统及方法 |
CN106899676A (zh) * | 2017-02-28 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种多客户端写入目录配额分配方法 |
CN107506242A (zh) * | 2017-08-30 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种配额申请方法及系统 |
CN107562386A (zh) * | 2017-09-13 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种分布式存储集群的数据写入方法及装置 |
CN107589915A (zh) * | 2017-09-25 | 2018-01-16 | 郑州云海信息技术有限公司 | 一种分布式存储系统的容量信息监控方法、装置及设备 |
CN107918527A (zh) * | 2017-11-01 | 2018-04-17 | 北京小米移动软件有限公司 | 存储空间分配方法及装置以及文件存储方法及装置 |
CN108829352A (zh) * | 2018-06-06 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种分布式存储系统的用户配额方法及系统 |
CN110515563A (zh) * | 2019-08-29 | 2019-11-29 | 北京浪潮数据技术有限公司 | 一种存储池管理方法、系统、设备及计算机可读存储介质 |
CN111176569A (zh) * | 2019-12-27 | 2020-05-19 | 浪潮电子信息产业股份有限公司 | 一种流量配额方法、装置、系统和设备及可读存储介质 |
CN111447577A (zh) * | 2020-02-18 | 2020-07-24 | 中国联合网络通信集团有限公司 | 配额管理方法及设备 |
-
2020
- 2020-07-30 CN CN202010751168.1A patent/CN112000280A/zh not_active Withdrawn
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326013A (zh) * | 2016-08-25 | 2017-01-11 | 浪潮(北京)电子信息产业有限公司 | 一种分布式文件系统的磁盘配额管理系统及方法 |
CN106899676A (zh) * | 2017-02-28 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种多客户端写入目录配额分配方法 |
CN107506242A (zh) * | 2017-08-30 | 2017-12-22 | 郑州云海信息技术有限公司 | 一种配额申请方法及系统 |
CN107562386A (zh) * | 2017-09-13 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种分布式存储集群的数据写入方法及装置 |
CN107589915A (zh) * | 2017-09-25 | 2018-01-16 | 郑州云海信息技术有限公司 | 一种分布式存储系统的容量信息监控方法、装置及设备 |
CN107918527A (zh) * | 2017-11-01 | 2018-04-17 | 北京小米移动软件有限公司 | 存储空间分配方法及装置以及文件存储方法及装置 |
CN108829352A (zh) * | 2018-06-06 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种分布式存储系统的用户配额方法及系统 |
CN110515563A (zh) * | 2019-08-29 | 2019-11-29 | 北京浪潮数据技术有限公司 | 一种存储池管理方法、系统、设备及计算机可读存储介质 |
CN111176569A (zh) * | 2019-12-27 | 2020-05-19 | 浪潮电子信息产业股份有限公司 | 一种流量配额方法、装置、系统和设备及可读存储介质 |
CN111447577A (zh) * | 2020-02-18 | 2020-07-24 | 中国联合网络通信集团有限公司 | 配额管理方法及设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598649A (zh) * | 2022-03-17 | 2022-06-07 | 苏州浪潮智能科技有限公司 | 内核带宽管理方法、装置、存储设备及存储介质 |
CN114598649B (zh) * | 2022-03-17 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 内核带宽管理方法、装置、存储设备及存储介质 |
CN115242818A (zh) * | 2022-07-22 | 2022-10-25 | 济南浪潮数据技术有限公司 | 一种配额管理方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829352B (zh) | 一种分布式存储系统的用户配额方法及系统 | |
CN112256438B (zh) | 负载均衡控制方法和装置、存储介质及电子设备 | |
CN110996339B (zh) | 一种eSIM资源管理平台和管理方法 | |
CN112000280A (zh) | 一种配额管控方法及系统 | |
CN110244901B (zh) | 任务分配方法及装置、分布式存储系统 | |
CN109726007B (zh) | 一种容器编排配额管理方法和装置、及容器编排系统 | |
US9785697B2 (en) | Methods and apparatus for implementing a distributed database | |
WO2016139938A1 (ja) | シンクライアントシステム、接続管理装置、仮想マシン稼働装置、方法、および、記憶媒体 | |
CN112698952A (zh) | 计算资源统一管理方法、装置、计算机设备及存储介质 | |
CN116662020B (zh) | 应用服务动态管理方法、系统、电子设备及存储介质 | |
CN110868323B (zh) | 一种带宽控制方法、装置、设备及介质 | |
US20090100436A1 (en) | Partitioning system including a generic partitioning manager for partitioning resources | |
CN108667940B (zh) | 云平台的资源分配方法、装置及计算机可读存储介质 | |
CN115858419A (zh) | 元数据管理方法、装置、设备、服务器及可读存储介质 | |
CN110472406B (zh) | 一种跨业务系统的数据权限控制方法及系统 | |
CN103441865A (zh) | 管理IP地址的方法、系统及BRAS和Portal服务器 | |
CN114780177A (zh) | 事务执行方法及装置、存储介质及电子装置 | |
CN113538081A (zh) | 商城订单系统及其实现资源自适应调度的处理方法 | |
CN113660178A (zh) | 一种cdn内容管理系统 | |
CN114641033B (zh) | 5g消息推送速度控制方法、装置、设备及介质 | |
CN110728385B (zh) | 共享对象的分配方法、服务器及系统 | |
CN117478722B (zh) | P2p标识符的分配方法、系统、电子设备及存储介质 | |
CN104298560A (zh) | 一种负荷分担系统及方法 | |
CN116866405A (zh) | 设备的连接调度方法、服务器、分布式协调系统及介质 | |
CN110928888A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201127 |
|
WW01 | Invention patent application withdrawn after publication |