CN108989439B - 一种分布式存储服务质量控制方法及装置 - Google Patents
一种分布式存储服务质量控制方法及装置 Download PDFInfo
- Publication number
- CN108989439B CN108989439B CN201810837239.2A CN201810837239A CN108989439B CN 108989439 B CN108989439 B CN 108989439B CN 201810837239 A CN201810837239 A CN 201810837239A CN 108989439 B CN108989439 B CN 108989439B
- Authority
- CN
- China
- Prior art keywords
- configuration file
- resource
- resource configuration
- carried
- requirement
- 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
Links
- 238000003908 quality control method Methods 0.000 title abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000008901 benefit Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- 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]
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种分布式存储服务质量控制方法及装置,该方法包括:接收操作请求;根据操作标识,确定与操作标识对应的至少一个资源配置文件;加锁访问至少一个资源配置文件,判断至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足资源量需求;当目标资源配置文件携带的资源量阈值满足资源量需求时,执行操作请求,并根据资源量需求更新目标资源配置文件携带的资源量阈值后释放锁。本申请实施例实现了对用户或存储桶访问的限制,提升集群服务质量,满足用户服务要求的同时,保证整个对象存储系统的资源调度和平衡,提供更好的对象存储服务质量。
Description
技术领域
本申请涉及分布式存储技术领域,尤其涉及一种分布式存储服务质量控制方法及装置。
背景技术
放眼当前,云计算正在开启爆发式创新的时代,物联网的出现让数以百万计的设备每时每刻都在创建、收集和发送数据,数据量级也从拍字节(petabyte,PB)跃升到了泽字节(zettabyte,ZB)级别。面对前所未有的海量数据来势汹汹,企业必须确定如何才能有效保留、保护、分析自己的非结构化数据,并最大程度地发挥这些数据的价值。传统企业存储,如网络附属存储(Network Attached Storage,NAS)或存储区域网络(Storage AreaNetwork,SAN)等,显然已无法应对如此海量的非结构化数据存储需求。
作为一种新型网络存储架构,对象存储采用了“对象”(object)数据组织,克服了NAS与SAN的不足,使它既有“块”接口的快速,又有“文件”接口的便于共享,提供具有高性能、高可靠性、跨平台以及安全的数据共享的存储体系结构。
由于对象存储一般采用RESTful API的访问方式,具备开放的共享性,同时可以提供多用户的并发请求访问,那么如何针对不同的用户提供不同的服务质量(Quality ofService,QoS)就成为目前一个亟待解决的问题。
发明内容
为了解决现有技术问题,本申请实施例提供了一种分布式存储服务质量控制方法及装置,能够满足不同用户提供不同的服务质量。
本申请实施例提供的一种分布式存储服务质量控制方法,所述方法包括:
接收操作请求;所述操作请求携带操作标识和资源量需求;所述操作标识包括用户的标识和/或存储桶的标识,所述资源量需求包括每秒操作数和/或带宽需求;
根据所述操作标识,确定与所述操作标识对应的至少一个资源配置文件;所述资源配置文件携带资源量阈值;
加锁访问所述至少一个资源配置文件,判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求;
当目标资源配置文件携带的资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源配置文件携带的资源量阈值后释放锁;所述目标资源配置文件为至少一个资源配置文件中的任意一个。
可选的,当所述资源量需求包括每秒操作数时,所述资源量阈值包括每秒操作数阈值;
所述判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求,具体包括:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于所述每秒操作数;
所述当目标资源配置文件携带的资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源配置文件携带的资源量阈值后释放锁,具体包括:
当所述目标资源配置文件携带的每秒操作数阈值大于或等于所述每秒操作数时,执行所述操作请求,并将所述目标资源配置文件携带的每秒操作数阈值减去所述每秒操作数,更新所述目标资源配置文件携带的每秒操作数阈值后释放锁。
可选的,当所述资源量需求包括带宽需求时,所述资源量阈值包括最大带宽;
所述判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求,具体包括:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的最大带宽大于或等于所述带宽需求;
所述当目标资源配置文件携带的资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源配置文件携带的资源量阈值后释放锁,具体包括:
当所述目标资源配置文件携带的最大带宽大于或等于所述带宽需求时,执行所述操作请求,并将所述目标资源配置文件携带的最大带宽减去所述带宽需求,更新所述目标资源配置文件携带的最大带宽后释放锁。
可选的,
当所述操作标识包括所述用户的标识和/或所述存储桶的标识时,所述资源配置文件为存储于所述用户的信息数据池中的对象;
当所述操作标识包括所述存储桶的标识时,所述资源配置文件为存储于所述存储桶的信息数据池中的对象;
所述资源量阈值存储于所述资源配置文件的属性中。
可选的,还包括:
每秒重置所述至少一个资源配置文件携带的资源量阈值。
本申请实施例提供的一种分布式存储服务质量控制装置,其特征在于,所述装置包括:接收模块、确定模块、判断模块和处理模块;
所述接收模块,用于接收操作请求;所述操作请求携带操作标识和资源量需求;所述操作标识包括用户的标识和/或存储桶的标识,所述资源量包括每秒操作数和/或带宽需求;
所述确定模块,用于根据所述操作标识,确定与所述操作标识对应的至少一个资源配置文件;所述资源配置文件携带资源量阈值;
所述判断模块,用于加锁访问所述至少一个资源配置文件,判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求;
所述处理模块,用于当所述判断模块判断目标资源配置文件携带的目标资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源量阈值后释放锁;所述目标资源配置文件为至少一个资源配置文件中的任意一个。
可选的,当所述资源量包括每秒操作数时,所述资源量阈值包括每秒操作数阈值;
所述判断模块,具体用于:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于所述每秒操作数;
所述处理模块,具体用于:
当所述判断模块判断所述目标资源配置文件携带的每秒操作数阈值大于或等于所述每秒操作数时,执行所述操作请求,并将所述目标资源配置文件携带的每秒操作数阈值减去所述每秒操作数,更新所述目标资源配置文件携带的每秒操作数阈值后释放锁。
可选的,当所述资源量包括带宽需求时,所述资源量阈值包括最大带宽;
所述判断模块,具体用于:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的最大带宽大于或等于所述带宽需求;
所述处理模块,具体用于:
当所述判断模块判断所述目标资源配置文件携带的最大带宽大于或等于所述带宽需求时,执行所述操作请求,并将所述目标资源配置文件携带的最大带宽减去所述带宽需求,更新所述目标资源配置文件携带的最大带宽后释放锁。
可选的,
当所述操作标识包括所述用户的标识和/或所述存储桶的标识时,所述资源配置文件为存储于所述用户的信息数据池中的对象;
当所述操作标识包括所述存储桶的标识时,所述资源配置文件为存储于所述存储桶的信息数据池中的对象;
所述资源量阈值存储于所述资源配置文件的属性中。
可选的,所述装置还包括:重置模块;
所述重置模块,用于每秒重置所述至少一个资源配置文件携带的资源量阈值。
与现有技术相比,本申请至少具有以下优点:
在本申请实施例中,在用户通过对象存储网关发起操作请求时,接受该操作请求,根据操作请求中携带的操作标识,确定与发起的用户和/或被操作的存储桶所对应的至少一个资源配置文件。通过加锁访问资源配置文件,判断至少一个资源配置文件携带的资源量阈值中是否存在一个满足操作请求中携带的资源量需求的资源量阈值。然后,当其中一个目标资源量阈值满足操作请求携带的资源量需求时,才执行该操作请求,并根据资源量需求更新目标资源量阈值后释放锁;否则,不执行该操作请求,实现对用户或存储桶访问的限制,提升集群服务质量,满足用户服务要求的同时,保证整个对象存储系统的资源调度和平衡,提供更好的对象存储服务质量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种分布式存储服务质量控制方法的流程示意图;
图2为本申请具体实施例提供的一种分布式存储服务质量控制方法的示意图;
图3为本申请实施例提供的一种分布式存储服务质量控制装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解,首先介绍本申请实施例提供的一种分布式存储服务质量控制方法及装置的具体应用场景。
本申请实施例提供的一种分布式存储服务质量控制方法及装置应用于对象存储系统。对象存储(object storage),也称为基于对象的存储(object-based storage,OBS),是一种计算机数据存储体系结构。它将数据作为对象(object)进行管理。每个对象通常包括数据本身、可变数量的元数据和全局唯一标识符。对象存储可以在多个级别实现,包括设备级别(对象存储设备)、系统级别和接口级别。存储桶,也可简称为桶(bucket),是OBS中存储对象的容器。对象存储提供了基于桶和对象的扁平化存储方式,桶中的所有对象都处于同一逻辑层级,去除了文件系统中的多层级树形目录结构。
由于对象存储一般采用RESTful API的访问方式,具备开放的共享性,同时可以提供多用户的并发请求访问目前,为了保证整个对象存储系统的资源调度和平衡,提供更好的对象存储服务质量,本申请实施例提供了一种分布式存储服务质量控制方法及装置,以用户或桶为单位,预先存储对用户或桶的QoS属性对象,此对象内存储了对该用户或桶资源量限制,用户的每个操作请求或对桶的每个请求,均需首先访问对应的QoS属性对象获取请求放行权限后方可继续执行,否则阻塞,从而实现了用户或桶为单位的操作限制,提供一种对象存储集群QoS控制方法。
基于上述思想,为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请的具体实施方式做详细的说明。
参见图1,该图为本申请实施例提供的一种分布式存储服务质量控制方法的流程示意图。
本申请实施例提供的分布式存储服务质量控制方法,包括如下步骤S101-S104。
S101:接收操作请求。
在本申请实施例中,操作请求携带操作标识和资源量需求。其中,操作标识包括用户的标识和/或存储桶的标识,用户的标识指示操作请求的发起方,存储桶的标识指示操作请求的操作目标。资源量需求包括每秒操作数(operations per second,OPS)和/或带宽(bandwidth)需求。
S102:根据操作标识,确定与操作标识对应的至少一个资源配置文件。
在本申请实施例中,资源配置文件携带资源量阈值,资源量阈值即对操作请求携带的资源量需求的限制阈值,与资源量需求的具体内容对应,限制与其对应的操作请求所能使用的资源量。当资源量需求包括OPS时,资源量阈值包括每秒操作数阈值;当资源量需求包括带宽需求时,资源量阈值包括最大带宽。
在本申请实施例一些可能的实现方式中,当操作标识包括用户的标识和/或存储桶的标识时,资源配置文件为存储于用户的信息数据池中的对象;当操作标识包括存储桶的标识时,资源配置文件为存储于存储桶的信息数据池中的对象;资源量阈值存储于资源配置文件的属性中。作为一个示例,当资源量阈值包括每秒操作数阈值时,资源配置文件的属性包括key值为每秒操作数阈值、value值为每秒操作数阈值的具体数值;同理,当资源量阈值包括最大带宽时资源配置文件的属性包括key值为最大带宽、value值为最大带宽的具体数值。
S103:加锁访问至少一个资源配置文件,判断至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足资源量需求。
在本申请实施例中,在访问资源配置文件时,采用加锁访问的形式,避免多个并发的操作请求同时对同一个资源配置文件进行访问和修改时出错,保证数据的一致性。
但是,由于在接收到操作请求时,对资源配置文件实行加锁访问,这又导致了对同一资源配置文件的队列排序访问,每个操作请求处理时均会临时锁定对应的资源配置文件,导致请求处理效率低。
为此,在本申请实施例一些可能的实现方式中,可以通过对每个用户发起的或者对操作对象为同一存储桶的操作请求,设置多个资源配置文件与其对应,在对每个操作请求所用的资源量以及对每个用户发起的或者对操作对象为同一存储桶操作请求所用的总资源量进行限制的基础上,实现了操作请求的并行执行,保证了处理的效率。
S104:当目标资源配置文件携带的资源量阈值满足资源量需求时,执行操作请求,并根据资源量需求更新目标资源配置文件携带的资源量阈值后释放锁。
在本申请实施例中,目标资源配置文件为至少一个资源配置文件中的任意一个。下面将结合资源量需求的具体内容详细说明:
第一种可能的实现方式中,当资源量需求仅包括OPS时,资源量阈值包括每秒操作数阈值,步骤S103-S104具体可以包括:
判断至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于每秒操作数;
当目标资源配置文件携带的每秒操作数阈值大于或等于每秒操作数时,执行操作请求,并将目标资源配置文件携带的每秒操作数阈值减去每秒操作数,更新目标资源配置文件携带的每秒操作数阈值后释放锁。
第二种可能的实现方式中,当资源量需求仅包括带宽需求时,资源量阈值包括最大带宽;步骤S103-S104具体可以包括:
判断至少一个资源配置文件中是否存在一个资源配置文件其携带的最大带宽大于或等于带宽需求;
当目标资源配置文件携带的最大带宽大于或等于带宽需求时,执行操作请求,并将目标资源配置文件携带的最大带宽减去带宽需求,更新目标资源配置文件携带的最大带宽后释放锁。
第三种可能的实现方式中,当资源量需求包括OPS和带宽需求时,资源量阈值包括每秒操作数阈值和最大带宽,步骤S103-S104具体可以包括:
判断至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于每秒操作数且携带的最大带宽大于或等于带宽需求;
当目标资源配置文件携带的每秒操作数阈值大于或等于每秒操作数且携带的最大带宽大于或等于带宽需求时,执行操作请求,并将目标资源配置文件携带的最大带宽减去带宽需求,更新目标资源配置文件携带的最大带宽后释放锁。
在实际应用中,需要每秒重置每个资源配置文件携带的资源量阈值,本申请实施例对各个资源配置文件携带的资源量阈值的具体更新顺序和更新时间不进行限定,可以根据实际需要设定。
为了便于理解,参见图2,下面结合实际应用对本申请实施例提供的一种分布式存储服务质量控制方法进行详细说明。
首先,对象存储集群管理员设置某用户User1的QoS阈值,允许User1占用的最大带宽为Y MB/s;
其次,在对象存储集群内部存储一个对象(如对象名为:User1_QoS)用于存储用户User1的QoS阈值;阈值存储在User1_QoS属性内,OPS属性值为0,带宽属性值为Y*1024(因带宽属性值以KB/s为单位);
再次,将User1_QoS对象切分为N个分片,分别为User1_QoS_shards_1、User1_QoS_shards_2、…、User1_QoS_shards_n,每个对象分片在存储底层保存为一个文件,文件属性内存储QoS阈值:OPS为0,带宽属性值为Y*1024/N。并且,设置QoS守护进程定时每秒刷新User1_QoS对象的属性值,重置OPS属性值为0,带宽属性值为Y*1024,具体为分别将User1_QoS对象各分片文件属性值重置。
之后,当User1通过对象存储网关1同时发起M(M>N)个对象存储访问请求,首先加锁访问User1_QoS_shards_1、User1_QoS_shards_2、…、User1_QoS_shards_n文件,分别将N个分片的带宽属性值Y*1024/N减去本次请求的带宽量,即获取到访问请求准许。而第N+1个对象存储访问请求由于无法加锁访问上述N个分片文件中任意一个,将处于等待状态,轮询User_QoS对象分片文件尝试加锁访问,获取准许。当前N个User_QoS对象分片文件有被释放锁的时候,前述第N+1个访问请求立刻加锁访问,从访问User_QoS对象分片文件的带宽属性值Y*1024/N减去本次请求的数据量,即获取到访问请求准许。在一秒内当N个User_QoS对象分片文件的带宽属性值均为0,或者小于访问请求的请求数据量后,所有请求均会被阻塞,等待N个User_QoS对象分片文件的带宽属性值被QoS守护进程重置后方可尝试获取准许。
在本申请实施例中,在用户通过对象存储网关发起操作请求时,接受该操作请求,根据操作请求中携带的操作标识,确定与发起的用户和/或被操作的存储桶所对应的至少一个资源配置文件。通过加锁访问资源配置文件,判断至少一个资源配置文件携带的资源量阈值中是否存在一个满足操作请求中携带的资源量需求的资源量阈值。然后,当其中一个目标资源量阈值满足操作请求携带的资源量需求时,才执行该操作请求,并根据资源量需求更新目标资源量阈值后释放锁;否则,不执行该操作请求,实现对用户或存储桶访问的限制,提升集群服务质量,满足用户服务要求的同时,保证整个对象存储系统的资源调度和平衡,提供更好的对象存储服务质量。同时,通过控制不同用户的QoS,区分不同的用户级别,可以给对象系统提供商带来差异化服务收益。
基于上述实施例提供的分布式存储服务质量控制方法,本申请实施例还提供了一种分布式存储服务质量控制装置。
参见图3,该图为本申请实施例提供的一种分布式存储服务质量控制装置的结构示意图。
本申请实施例提供的分布式存储服务质量控制装置,包括:接收模块100、确定模块200、判断模块300和处理模块400;
接收模块100,用于接收操作请求;操作请求携带操作标识和资源量需求;操作标识包括用户的标识和/或存储桶的标识,资源量包括每秒操作数和/或带宽需求;
确定模块200,用于根据操作标识,确定与操作标识对应的至少一个资源配置文件;资源配置文件携带资源量阈值;
判断模块300,用于加锁访问至少一个资源配置文件,判断至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足资源量需求;
处理模块400,用于当判断模块300判断目标资源配置文件携带的目标资源量阈值满足资源量需求时,执行操作请求,并根据资源量需求更新目标资源量阈值后释放锁;目标资源配置文件为至少一个资源配置文件中的任意一个。
在本申请实施例一些可能的实现方式中,当资源量包括每秒操作数时,资源量阈值包括每秒操作数阈值;
判断模块300,具体用于:
判断至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于每秒操作数;
处理模块400,具体用于:
当判断模块300判断目标资源配置文件携带的每秒操作数阈值大于或等于每秒操作数时,执行操作请求,并将目标资源配置文件携带的每秒操作数阈值减去每秒操作数,更新目标资源配置文件携带的每秒操作数阈值后释放锁。
在本申请实施例一些可能的实现方式中,当资源量包括带宽需求时,资源量阈值包括最大带宽;
判断模块300,具体用于:
判断至少一个资源配置文件中是否存在一个资源配置文件其携带的最大带宽大于或等于带宽需求;
处理模块400,具体用于:
当判断模块300判断目标资源配置文件携带的最大带宽大于或等于带宽需求时,执行操作请求,并将目标资源配置文件携带的最大带宽减去带宽需求,更新目标资源配置文件携带的最大带宽后释放锁。
可选的,当操作标识包括用户的标识和/或存储桶的标识时,资源配置文件为存储于用户的信息数据池中的对象;当操作标识包括存储桶的标识时,资源配置文件为存储于存储桶的信息数据池中的对象;资源量阈值存储于资源配置文件的属性中。
在本申请实施例一些可能的实现方式中,该装置还可以包括:重置模块(未在图中示出);
重置模块,用于每秒重置至少一个资源配置文件携带的资源量阈值。
在本申请实施例中,在用户通过对象存储网关发起操作请求时,接受该操作请求,根据操作请求中携带的操作标识,确定与发起的用户和/或被操作的存储桶所对应的至少一个资源配置文件。通过加锁访问资源配置文件,判断至少一个资源配置文件携带的资源量阈值中是否存在一个满足操作请求中携带的资源量需求的资源量阈值。然后,当其中一个目标资源量阈值满足操作请求携带的资源量需求时,才执行该操作请求,并根据资源量需求更新目标资源量阈值后释放锁;否则,不执行该操作请求,实现对用户或存储桶访问的限制,提升集群服务质量,满足用户服务要求的同时,保证整个对象存储系统的资源调度和平衡,提供更好的对象存储服务质量。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述,仅是本申请的较佳实施例而已,并非对本申请作任何形式上的限制。虽然本申请已以较佳实施例揭露如上,然而并非用以限定本申请。任何熟悉本领域的技术人员,在不脱离本申请技术方案范围情况下,都可利用上述揭示的方法和技术内容对本申请技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本申请技术方案的内容,依据本申请的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本申请技术方案保护的范围内。
Claims (10)
1.一种分布式存储服务质量控制方法,其特征在于,所述方法包括:
接收操作请求;所述操作请求携带操作标识和资源量需求;所述操作标识包括用户的标识和/或存储桶的标识,所述资源量需求包括每秒操作数和/或带宽需求;
根据所述操作标识,确定与所述操作标识对应的至少一个资源配置文件;所述资源配置文件携带资源量阈值;
加锁访问所述至少一个资源配置文件,判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求;
当目标资源配置文件携带的资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源配置文件携带的资源量阈值后释放锁;所述目标资源配置文件为至少一个资源配置文件中的任意一个。
2.根据权利要求1所述的方法,其特征在于,当所述资源量需求包括每秒操作数时,所述资源量阈值包括每秒操作数阈值;
所述判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求,具体包括:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于所述每秒操作数;
所述当目标资源配置文件携带的资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源配置文件携带的资源量阈值后释放锁,具体包括:
当所述目标资源配置文件携带的每秒操作数阈值大于或等于所述每秒操作数时,执行所述操作请求,并将所述目标资源配置文件携带的每秒操作数阈值减去所述每秒操作数,更新所述目标资源配置文件携带的每秒操作数阈值后释放锁。
3.根据权利要求1所述的方法,其特征在于,当所述资源量需求包括带宽需求时,所述资源量阈值包括最大带宽;
所述判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求,具体包括:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的最大带宽大于或等于所述带宽需求;
所述当目标资源配置文件携带的资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源配置文件携带的资源量阈值后释放锁,具体包括:
当所述目标资源配置文件携带的最大带宽大于或等于所述带宽需求时,执行所述操作请求,并将所述目标资源配置文件携带的最大带宽减去所述带宽需求,更新所述目标资源配置文件携带的最大带宽后释放锁。
4.根据权利要求1-3任意一项所述的方法,其特征在于,
当所述操作标识包括所述用户的标识和/或所述存储桶的标识时,所述资源配置文件为存储于所述用户的信息数据池中的对象;
当所述操作标识包括所述存储桶的标识时,所述资源配置文件为存储于所述存储桶的信息数据池中的对象;
所述资源量阈值存储于所述资源配置文件的属性中。
5.根据权利要求1-3任意一项所述的方法,其特征在于,还包括:
每秒重置所述至少一个资源配置文件携带的资源量阈值。
6.一种分布式存储服务质量控制装置,其特征在于,所述装置包括:接收模块、确定模块、判断模块和处理模块;
所述接收模块,用于接收操作请求;所述操作请求携带操作标识和资源量需求;所述操作标识包括用户的标识和/或存储桶的标识,所述资源量包括每秒操作数和/或带宽需求;
所述确定模块,用于根据所述操作标识,确定与所述操作标识对应的至少一个资源配置文件;所述资源配置文件携带资源量阈值;
所述判断模块,用于加锁访问所述至少一个资源配置文件,判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的资源量阈值满足所述资源量需求;
所述处理模块,用于当所述判断模块判断目标资源配置文件携带的目标资源量阈值满足所述资源量需求时,执行所述操作请求,并根据所述资源量需求更新所述目标资源量阈值后释放锁;所述目标资源配置文件为至少一个资源配置文件中的任意一个。
7.根据权利要求6所述的装置,其特征在于,当所述资源量包括每秒操作数时,所述资源量阈值包括每秒操作数阈值;
所述判断模块,具体用于:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的每秒操作数阈值大于或等于所述每秒操作数;
所述处理模块,具体用于:
当所述判断模块判断所述目标资源配置文件携带的每秒操作数阈值大于或等于所述每秒操作数时,执行所述操作请求,并将所述目标资源配置文件携带的每秒操作数阈值减去所述每秒操作数,更新所述目标资源配置文件携带的每秒操作数阈值后释放锁。
8.根据权利要求6所述的装置,其特征在于,当所述资源量包括带宽需求时,所述资源量阈值包括最大带宽;
所述判断模块,具体用于:
判断所述至少一个资源配置文件中是否存在一个资源配置文件其携带的最大带宽大于或等于所述带宽需求;
所述处理模块,具体用于:
当所述判断模块判断所述目标资源配置文件携带的最大带宽大于或等于所述带宽需求时,执行所述操作请求,并将所述目标资源配置文件携带的最大带宽减去所述带宽需求,更新所述目标资源配置文件携带的最大带宽后释放锁。
9.根据权利要求6-8任意一项所述的装置,其特征在于,
当所述操作标识包括所述用户的标识和/或所述存储桶的标识时,所述资源配置文件为存储于所述用户的信息数据池中的对象;
当所述操作标识包括所述存储桶的标识时,所述资源配置文件为存储于所述存储桶的信息数据池中的对象;
所述资源量阈值存储于所述资源配置文件的属性中。
10.根据权利要求6-8任意一项 所述的装置,其特征在于,所述装置还包括:重置模块;
所述重置模块,用于每秒重置所述至少一个资源配置文件携带的资源量阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810837239.2A CN108989439B (zh) | 2018-07-26 | 2018-07-26 | 一种分布式存储服务质量控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810837239.2A CN108989439B (zh) | 2018-07-26 | 2018-07-26 | 一种分布式存储服务质量控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108989439A CN108989439A (zh) | 2018-12-11 |
CN108989439B true CN108989439B (zh) | 2021-06-29 |
Family
ID=64551732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810837239.2A Active CN108989439B (zh) | 2018-07-26 | 2018-07-26 | 一种分布式存储服务质量控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108989439B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110362314B (zh) * | 2019-07-12 | 2023-10-24 | Oppo广东移动通信有限公司 | 信息处理方法及装置、计算机可读介质、电子设备 |
CN111092959B (zh) * | 2019-12-29 | 2022-08-12 | 浪潮电子信息产业股份有限公司 | 一种集群中服务器的请求处理方法、系统及相关装置 |
CN111338575B (zh) * | 2020-02-20 | 2021-06-29 | 苏州浪潮智能科技有限公司 | 一种存储服务质量控制方法、装置、设备及存储介质 |
CN111641698B (zh) * | 2020-05-22 | 2023-04-18 | 浪潮电子信息产业股份有限公司 | 一种数据统计方法、系统、设备及存储介质 |
CN115801584A (zh) * | 2022-11-17 | 2023-03-14 | 烽火通信科技股份有限公司 | 一种基于分布式事务的Qos带宽分配的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1490993A (zh) * | 2003-09-15 | 2004-04-21 | 北京港湾网络有限公司 | 宽带网络接入设备用户多业务系统实现方法 |
CN101232459A (zh) * | 2005-03-28 | 2008-07-30 | 华为技术有限公司 | 一种业务带宽动态控制方法 |
CN103873321A (zh) * | 2014-03-05 | 2014-06-18 | 国家电网公司 | 基于分布式文件系统的仿真分布式并行计算平台及方法 |
CN106874125A (zh) * | 2017-01-13 | 2017-06-20 | 北京元心科技有限公司 | 多容器系统间共享系统资源的方法及装置 |
CN107454137A (zh) * | 2017-06-16 | 2017-12-08 | 广州天宁信息技术有限公司 | 一种在线业务按需服务的方法、装置与设备 |
-
2018
- 2018-07-26 CN CN201810837239.2A patent/CN108989439B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1490993A (zh) * | 2003-09-15 | 2004-04-21 | 北京港湾网络有限公司 | 宽带网络接入设备用户多业务系统实现方法 |
CN101232459A (zh) * | 2005-03-28 | 2008-07-30 | 华为技术有限公司 | 一种业务带宽动态控制方法 |
CN103873321A (zh) * | 2014-03-05 | 2014-06-18 | 国家电网公司 | 基于分布式文件系统的仿真分布式并行计算平台及方法 |
CN106874125A (zh) * | 2017-01-13 | 2017-06-20 | 北京元心科技有限公司 | 多容器系统间共享系统资源的方法及装置 |
CN107454137A (zh) * | 2017-06-16 | 2017-12-08 | 广州天宁信息技术有限公司 | 一种在线业务按需服务的方法、装置与设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108989439A (zh) | 2018-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108989439B (zh) | 一种分布式存储服务质量控制方法及装置 | |
US12118112B2 (en) | Nested namespaces for selective content sharing | |
US11431651B2 (en) | Dynamic allocation of workload deployment units across a plurality of clouds | |
US10868673B2 (en) | Network access control based on distributed ledger | |
US10554508B2 (en) | Updating a topology graph representing a distributed computing system by monitoring predefined parameters with respect to predetermined performance threshold values and using predetermined rules to select a combination of application, storage and database server nodes to meet at least one service level objective (SLO) | |
US9253055B2 (en) | Transparently enforcing policies in hadoop-style processing infrastructures | |
US8935756B2 (en) | Providing multiple authentications to authenticate users with respect to a system and file systems offered through the system | |
CN110413595B (zh) | 一种应用于分布式数据库的数据迁移方法和相关装置 | |
US20140149475A1 (en) | Managing distributed storage quotas | |
US9830469B1 (en) | Automated mechanism to secure customer data | |
WO2013080084A1 (en) | Removal of data remanence in deduplicated storage clouds | |
US11204702B2 (en) | Storage domain growth management | |
US9558344B2 (en) | Proximity based authentication for striped data | |
WO2016169166A1 (zh) | 虚拟机调度方法和装置 | |
US20200302080A1 (en) | Database proxy service | |
US20190109901A1 (en) | Initiator aware data migration | |
CN111373387B (zh) | 对通信工具中的文件的去重的方法、系统和介质 | |
Suguna et al. | Enriched multi objective optimization model based cloud disaster recovery | |
US11269525B2 (en) | Co-processing a plurality of dependent systems with a finite number of processing threads | |
WO2011057876A1 (en) | Network system security management | |
US11900152B1 (en) | Controlled automatic updates to disk image layers with compatibility verification | |
US11121981B1 (en) | Optimistically granting permission to host computing resources | |
EP4383088A1 (en) | Monitoring of resource consumption per tenant | |
EP4383087A1 (en) | Workload classes for tenant-level resource isolation | |
Chen et al. | Designing a simple storage services (S3) compatible system based on Ceph software-defined storage system |
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 |