CN107276827A - 一种分布式存储系统中Qos的实现方法及装置 - Google Patents
一种分布式存储系统中Qos的实现方法及装置 Download PDFInfo
- Publication number
- CN107276827A CN107276827A CN201710612235.XA CN201710612235A CN107276827A CN 107276827 A CN107276827 A CN 107276827A CN 201710612235 A CN201710612235 A CN 201710612235A CN 107276827 A CN107276827 A CN 107276827A
- Authority
- CN
- China
- Prior art keywords
- token
- token bucket
- bucket
- read
- write operation
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5051—Service on demand, e.g. definition and deployment of services in real time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/215—Flow control; Congestion control using token-bucket
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种分布式存储系统中Qos的实现方法及装置,在接收到读写操作指令后,从读写操作令牌桶和带宽令牌桶中分别申请令牌,每个令牌桶中存储的令牌的总数与用户自身实际需求购买的服务质量相关,只有在令牌桶中存在令牌时,才能从令牌桶中申请到令牌,并且只有从读写操作令牌和带宽令牌桶中都申请到令牌,才能执行与读写操作指令对应的操作。其中,读写操作令牌桶中令牌数量用于限制每秒进行读写操作的次数(IOPS),带宽令牌桶中令牌数量用于限制读写操作的带宽。实现了同时满足IOPS和带宽的要求。
Description
技术领域
本发明属于分布式存储技术领域,尤其涉及一种分布式存储系统中Qos的实现方法及装置。
背景技术
随着云计算的兴起,分布式存储迈入云存储时代。云存储向用户提供可定制化和按需付费的服务,用户可以根据自身实际需求购买对应服务质量(QoS)的存储服务。
QoS的保证对于资源有限的分布式存储场景来说是十分重要,尤其对于流多媒体应用场景,这些应用场景对每秒进行读写(I/O)操作的次数(IOPS)和带宽具有较高的要求。
现有技术在分布式存储系统中Qos的实现方法无法同时满足IOPS和带宽的较高要求。
为此,提供一种能够同时满足IOPS和带宽的较高要求的Qos实现方法,是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种分布式存储系统中Qos的实现方法及装置,用于解决现有技术在分布式存储系统中Qos的实现方法无法同时满足IOPS和带宽的较高要求。
技术方案如下:
本发明提供一种分布式存储系统中Qos的实现方法,包括:
在接收到读/写操作指令后,从令牌桶中申请令牌;其中,所述令牌桶包括读写操作令牌桶和带宽令牌桶;
判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌,则执行与所述读写操作指令对应的操作。
优选地,所述从令牌桶中申请令牌包括:
判断所述令牌桶中是否存在令牌;
判断所述令牌桶中存在令牌,则从所述令牌桶中获得令牌,并将获得的令牌从所述令牌桶中去除。
优选地,所述判断所述令牌桶中是否存在令牌后,还包括:
判断所述令牌桶中不存在令牌,则更新所述令牌桶;
从更新后的所述令牌桶中获取令牌。
优选地,所述更新所述令牌桶包括:
获取与所述读写操作指令对应的存储块的卷属性;
从所述卷属性中获取向所述令牌桶中添加令牌的速度;
根据所述令牌桶中添加令牌的速度,按照预设规则更新所述令牌桶。
优选地,所述预设规则为:
T(i+1)=T(i)+V*Interval
T(i+1)=(T(i+1)>MAX)?MAX:T(i+1)
其中,T(i)表示第i次迭代时所述令牌桶中令牌的数量,Interval代表第i次迭代与第i+1次迭代之间的时间差,单位为秒,MAX表示所述令牌桶中令牌数量的最大值,MAX=α*V,V表示所述令牌桶中添加令牌的速度,单位为个/秒,α为大于1的任意自然数。
本发明还提供一种分布式存储系统中Qos的实现装置,包括:
获取单元,用于在接收到读/写操作指令后,从令牌桶中申请令牌;其中,所述令牌桶包括读写操作令牌桶和带宽令牌桶;
判断单元,用于判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
执行单元,用于当所述判断单元判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌时,执行与所述读写操作指令对应的操作。
优选地,所述获取单元具体包括:
判断所述令牌桶中是否存在令牌;
判断所述令牌桶中存在令牌,则从所述令牌桶中获得令牌,并将获得的令牌从所述令牌桶中去除。
优选地,还包括:
更新单元,用于在判断所述令牌桶中不存在令牌时,更新所述令牌桶;
所述获取单元还用于从更新后的所述令牌桶中获取令牌。
优选地,所述更新单元具体包括:
获取与所述读写操作指令对应的存储块的卷属性;
从所述卷属性中获取向所述令牌桶中添加令牌的速度;
根据所述令牌桶中添加令牌的速度,按照预设规则更新所述令牌桶。
优选地,所述预设规则为:
T(i+1)=T(i)+V*Interval
T(i+1)=(T(i+1)>MAX)?MAX:T(i+1)
其中,T(i)表示第i次迭代时所述令牌桶中令牌的数量,Interval代表第i次迭代与第i+1次迭代之间的时间差,单位为秒,MAX表示所述令牌桶中令牌数量的最大值,MAX=α*V,V表示所述令牌桶中添加令牌的速度,单位为个/秒,α为大于1的任意自然数。
与现有技术相比,本发明提供的上述技术方案具有如下优点:
从上述技术方案可知,本申请中在接收到读写操作指令后,从读写操作令牌桶和带宽令牌桶中分别申请令牌,每个令牌桶中存储的令牌的总数与用户自身实际需求购买的服务质量相关,只有在令牌桶中存在令牌时,才能从令牌桶中申请到令牌,并且只有从读写操作令牌和带宽令牌桶中都申请到令牌,才能执行与读写操作指令对应的操作。其中,读写操作令牌桶中令牌数量用于限制每秒进行读写操作的次数(IOPS),带宽令牌桶中令牌数量用于限制读写操作的带宽。实现了同时满足IOPS和带宽的要求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种分布式存储系统中QOS的实现方法的流程图;
图2是本发明实施例提供的另一种分布式存储系统中QOS的实现方法的流程图;
图3是本发明实施例提供的一种分布式存储系统中QOS的实现装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种分布式存储系统中QOS的实现方法,参见图1,该实施例包括以下步骤:
S101、接收到读/写操作指令后,从令牌桶中申请令牌;其中,所述令牌桶包括读写操作令牌桶和带宽令牌桶;
采用令牌桶算法实现分布式存储Qos流量监管,核心原理就是通过监督进入存储网络端口的流量速率,对超出部分的流量进行惩罚,调配各客户端流量,使流量被控制在设定的范围之内。
在令牌桶算法中,令牌就是分布式存储系统中控制读写操作是否执行的标记。令牌桶是存储令牌的存储池,令牌桶中存储的令牌数量具有最大值。其中,最大值与用户自身实际需求购买的服务质量相关,因此提供给不同用户的令牌桶中存储的令牌数量不同。
本实施例中令牌桶包括读写操作令牌桶和带宽令牌桶这两种类型的令牌桶,其中,读写操作令牌桶用于限制每秒进行读写操作的次数(IOPS),带宽令牌桶用于限制读写操作的带宽。且令牌桶仅对IOPS和带宽的上限值进行限制,并不对下限值进行限制,下限值默认为0。
针对读/写操作,读操作和写操作可分别限制各自的IOPS上限值,即读操作对应一个读写操作令牌桶,写操作对应一个读写操作令牌桶,且两个读写操作令牌桶内存储的令牌数量并不相同;读操作和写操作可以分别限制各自的带宽,此时读操作对应一个带宽令牌桶,写操作对应一个带宽令牌桶;读操作和写操作也可以限制读写混合带宽,此时读/写操作共同对应一个带宽令牌桶。
在执行一次读操作或者写操作时,先要从令牌桶中申请令牌。只有令牌桶中当前令牌数量不为0,即令牌桶中存在令牌时,才能从令牌桶中申请到令牌;如果当前令牌桶为空,则不能从令牌桶中申请到令牌。
在本实施例中,为了实现对IOPS和带宽的限制,分别设置了读写操作令牌桶和带宽令牌桶,在接收到读/写操作指令后,需要分别从读写操作令牌桶和带宽令牌桶中申请令牌。其中,申请令牌的顺序是先从读写操作令牌桶中申请令牌,再从带宽令牌桶中申请令牌。
一个读/写操作指令,对应一次读/写操作,需要从读写操作令牌桶中获得一支令牌;由于一次读/写操作指令,对应的需要读取的数据或者需要写入的数据的位数不同,而数据的每一位都需要从带宽令牌桶中获得一支令牌,因此一次读/写操作指令需要从带宽令牌桶中获得的令牌数不是固定的,而是根据读/写数据的位数相关。
S102、判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌,则执行步骤S103;
分别从读写操作令牌桶和带宽令牌桶中申请令牌后,判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
其中,由于针对一个读/写操作指令,需要从带宽令牌桶中获得的令牌数是不固定的,因此在判断是否从所述带宽令牌桶中申请到令牌具体是判断从所述带宽令牌桶中获得的令牌数是否与读写数据的位数相同。只有从带宽令牌桶中获得与读写数据位数相同的令牌,才能完成读写操作。
S103、执行与所述读写操作指令对应的操作。
从读写操作令牌桶中申请到允许读写操作的令牌,且从带宽令牌桶中申请到允许读写操作指令需要读写的数据的令牌后,执行与此次读写操作指令对应的读写操作。
只要没有从两个令牌桶中的任意一个令牌桶中申请到所需要数量的令牌,则此次读写操作将会被阻塞或者返回相应的错误消息。
从上述技术方案可知,本申请中在接收到读写操作指令后,从读写操作令牌桶和带宽令牌桶中分别申请令牌,每个令牌桶中存储的令牌的总数与用户自身实际需求购买的服务质量相关,只有在令牌桶中存在令牌时,才能从令牌桶中申请到令牌,并且只有从读写操作令牌和带宽令牌桶中都申请到令牌,才能执行与读写操作指令对应的操作。其中,读写操作令牌桶中令牌数量用于限制每秒进行读写操作的次数(IOPS),带宽令牌桶中令牌数量用于限制读写操作的带宽。实现了同时满足IOPS和带宽的要求。
本发明公开了另一种分布式存储系统中Qos的实现方法,参见图2,该实施例包括以下步骤:
S201、接收到读/写操作指令后,判断所述令牌桶中是否存在令牌;
判断所述令牌桶中存在令牌,则执行步骤S202;
判断所述令牌桶中不存在令牌,则执行步骤S205;
S202、获取与所述读写操作指令对应的存储块的卷属性;
令牌桶中存储的令牌数量会随着时间按照一定的速率递增。即按照一定的速度向令牌桶中添加令牌。其中,向令牌桶中添加令牌的速度是由用户自身实际需求购买的服务质量决定的。在实际应用中,向读写操作令牌桶中添加令牌的速度设置为IOPS的上限值,向带宽令牌桶中添加令牌的速度设置为带宽的上限值。
本实施例中应用场景为分布式块存储。将向令牌桶中添加令牌的速度存储在后端存储集群中,避免了数据的丢失。
当建立存储数据块时,从分布式存储集群的配置文件中读取该向令牌桶中添加令牌的速度值,并在存储数据块的卷属性中设置读取到的速度值。
如果不能从分布式存储集群的配置文件中读取到该向令牌桶中添加令牌的速度值,则在存储数据块的卷属性中设置默认速度值。
当删除存储数据块时,将存储数据块的卷属性数据一起删除,而不需要进行额外的操作。
当用户购买的服务质量发生变化时,可以在配置文件中修改存储在后端存储集群中的向令牌桶中添加令牌的速度值。当然,也可以在建立存储数据块后,通过相应的命令修改存储数据块的卷属性,而无需重启集群,即可按照修改后的卷属性中向令牌桶中添加令牌的速度值更新令牌桶。
S203、从所述卷属性中获取向所述令牌桶中添加令牌的速度;
S204、根据所述令牌桶中添加令牌的速度,按照预设规则更新所述令牌桶;
预设规则为:
T(i+1)=T(i)+V*Interval
T(i+1)=(T(i+1)>MAX)?MAX:T(i+1)
其中,T(i)表示第i次迭代时所述令牌桶中令牌的总数,Interval代表第i次迭代与第i+1次迭代之间的时间差,单位为秒,MAX表示所述令牌桶中令牌总数的最大值,MAX=α*V,V表示所述令牌桶中添加令牌的速度,单位为个/秒,α为大于1的任意自然数。
V是通过从卷属性中获取到的IOPS的上限值和带宽的上限值。Interval代表第i次迭代与第i+1次迭代之间的时间差,即令牌桶更新的时间间隔,Interval可以根据实际需要进行合理的设置。本实施例中Interval=1s。
由于在特定的场景下,例如很长时间没有访问某一存储数据块,在刚开始访问此数据块时,会同时产生大量的读写数据操作指令,即产生IO突发洪流。因此,为了能够处理IO突发洪流,需要保障每一个读写数据操作指令都能分别从读写操作令牌桶和带宽令牌桶中获取到令牌。基于此,如果读写操作令牌桶中存储的令牌总数是IOPS的上限值,带宽令牌桶中存储的令牌总数是带宽的上限值,那么IO突发洪流中的部分读写数据操作指令将不能获取到令牌,进而不能及时处理IO突发洪流。对此,设置令牌桶中令牌总数的最大值MAX=α*V,α为大于1的任意自然数,即令牌桶中能够存储的令牌的总数量大于V,大于IOPS的上限值和带宽的上限值。
又由于每隔一定时间,令牌桶就完成一次更新,而令牌桶本身能够存储的令牌总数是固定的,因此,可能出现按照向令牌桶中添加令牌的速度对令牌桶进行更新后,计算得到的令牌桶中应该存储的令牌数量大于令牌桶自身能够存储的令牌总数。对此,当出现计算得到的令牌桶中应该存储的令牌数量大于令牌桶自身能够存储的令牌总数时,设置令牌桶中存储的令牌数为令牌桶自身能够存储的令牌总数。
在本实施例中,虽然更新令牌桶的步骤在判断令牌桶中令牌的总数为0步骤的后面,但是实际上,在每次更新令牌桶时,并不需要判断令牌桶中当前存储的令牌的总数是多少。无论当前令牌桶中令牌的总是是0还是不是0,只要每隔一定的时间,就会完成一次令牌桶的更新。
S205、从所述令牌桶中获得令牌,并将获得的令牌从所述令牌桶中去除;
从令牌桶中获取令牌的操作与更新令牌桶的操作是并行处理的,两者之间并不互相影响。
针对一个读/写操作指令,从令牌桶中获得令牌后,不同类型的令牌桶中令牌数量减少的不同。对读写操作令牌桶而言,一个读/写操作指令对应一次读/写操作,每个读/写操作只获得一支令牌,因此读写操作令牌桶中令牌数量每次减少1支;对带宽令牌桶而言,一次读/写操作指令,对应的需要读取的数据或者需要写入的数据的位数不同,而数据的每一位都需要从带宽令牌桶中获得一支令牌,因此一次读/写操作指令需要从带宽令牌桶中获得的令牌数不是固定的,而是根据读/写数据的位数相关,因此带宽令牌桶中令牌数量每次减少的令牌数量与读/写数据的位数相同。
S206、判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌,则执行步骤S207;
S207、执行与所述读写操作指令对应的操作。
本实施例中步骤S206-S207的实现方式与上一实施例中步骤S102-S103的实现方式类似,此处不再赘述。
从上述技术方案可知,本申请中将IOPS的上限值和带宽的上限值存储在分布式存储集群中,可以保证数据的不丢失,且将IOPS的上限值和带宽的上限值作为存储数据块的卷属性,在建立存储数据块后,当用户需求发生变化,即IOPS的上限值和带宽的上限值发生变化,可以直接通过相应命令修改卷属性,而且无需重启集群,即可按照修改后的卷属性中的IOPS的上限值和带宽的上限值更新令牌桶。提高了用户体验。
对应上述分布式存储系统中QOS的实现方法,本发明还提供了一种分布式存储系统中QOS的实现装置,所述实现装置的结构示意图请参阅图3所示,本实施例中实现装置包括:
获取单元301、判断单元302、执行单元303和更新单元304;
获取单元301,用于在接收到读/写操作指令后,从令牌桶中申请令牌;其中,所述令牌桶包括读写操作令牌桶和带宽令牌桶;
获取单元301具体包括:
判断所述令牌桶中是否存在令牌;
判断所述令牌桶中存在令牌,则从所述令牌桶中获得令牌,并将获得的令牌从所述令牌桶中去除。
判断单元302,用于判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
执行单元303,用于当所述判断单元判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌时,执行与所述读写操作指令对应的操作;
更新单元304,用于在判断所述令牌桶中不存在令牌时,更新所述令牌桶;
更新单元304具体包括:
获取与所述读写操作指令对应的存储块的卷属性;
从所述卷属性中获取向所述令牌桶中添加令牌的速度;
根据所述令牌桶中添加令牌的速度,按照预设规则更新所述令牌桶。
其中,所述预设规则为:
T(i+1)=T(i)+V*Interval
T(i+1)=(T(i+1)>MAX)?MAX:T(i+1)
其中,T(i)表示第i次迭代时所述令牌桶中令牌的数量,Interval代表第i次迭代与第i+1次迭代之间的时间差,单位为秒,MAX表示所述令牌桶中令牌数量的最大值,MAX=α*V,V表示所述令牌桶中添加令牌的速度,单位为个/秒,α为大于1的任意自然数。
获取单元301还用于从更新后的所述令牌桶中获取令牌。
从上述技术方案可知,本实施例中在接收到读写操作指令后,从读写操作令牌桶和带宽令牌桶中分别申请令牌,每个令牌桶中存储的令牌的总数与用户自身实际需求购买的服务质量相关,只有在令牌桶中存在令牌时,才能从令牌桶中申请到令牌,并且只有从读写操作令牌和带宽令牌桶中都申请到令牌,才能执行与读写操作指令对应的操作。其中,读写操作令牌桶中令牌数量用于限制每秒进行读写操作的次数(IOPS),带宽令牌桶中令牌数量用于限制读写操作的带宽。实现了同时满足IOPS和带宽的要求。同时,将IOPS的上限值和带宽的上限值存储在分布式存储集群中,可以保证数据的不丢失,且将IOPS的上限值和带宽的上限值作为存储数据块的卷属性,在建立存储数据块后,当用户需求发生变化,即IOPS的上限值和带宽的上限值发生变化,可以直接通过相应命令修改卷属性,而且无需重启集群,即可按照修改后的卷属性中的IOPS的上限值和带宽的上限值更新令牌桶。提高了用户体验。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的装置而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种分布式存储系统中Qos的实现方法,其特征在于,包括:
在接收到读/写操作指令后,从令牌桶中申请令牌;其中,所述令牌桶包括读写操作令牌桶和带宽令牌桶;
判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌,则执行与所述读写操作指令对应的操作。
2.根据权利要求1所述的实现方法,其特征在于,所述从令牌桶中申请令牌包括:
判断所述令牌桶中是否存在令牌;
判断所述令牌桶中存在令牌,则从所述令牌桶中获得令牌,并将获得的令牌从所述令牌桶中去除。
3.根据权利要求2所述的实现方法,其特征在于,所述判断所述令牌桶中是否存在令牌后,还包括:
判断所述令牌桶中不存在令牌,则更新所述令牌桶;
从更新后的所述令牌桶中获取令牌。
4.根据权利要求3所述的实现方法,其特征在于,所述更新所述令牌桶包括:
获取与所述读写操作指令对应的存储块的卷属性;
从所述卷属性中获取向所述令牌桶中添加令牌的速度;
根据所述令牌桶中添加令牌的速度,按照预设规则更新所述令牌桶。
5.根据权利要求4所述的实现方法,其特征在于,所述预设规则为:
T(i+1)=T(i)+V*Interval
T(i+1)=(T(i+1)>MAX)?MAX:T(i+1)
其中,T(i)表示第i次迭代时所述令牌桶中令牌的数量,Interval代表第i次迭代与第i+1次迭代之间的时间差,单位为秒,MAX表示所述令牌桶中令牌数量的最大值,MAX=α*V,V表示所述令牌桶中添加令牌的速度,单位为个/秒,α为大于1的任意自然数。
6.一种分布式存储系统中Qos的实现装置,其特征在于,包括:
获取单元,用于在接收到读/写操作指令后,从令牌桶中申请令牌;其中,所述令牌桶包括读写操作令牌桶和带宽令牌桶;
判断单元,用于判断从所述读写操作令牌桶和所述带宽令牌桶中是否都申请到令牌;
执行单元,用于当所述判断单元判断从所述读写操作令牌和所述带宽令牌桶中都申请到令牌时,执行与所述读写操作指令对应的操作。
7.根据权利要求6所述的实现装置,其特征在于,所述获取单元具体包括:
判断所述令牌桶中是否存在令牌;
判断所述令牌桶中存在令牌,则从所述令牌桶中获得令牌,并将获得的令牌从所述令牌桶中去除。
8.根据权利要求7所述的实现装置,其特征在于,还包括:
更新单元,用于在判断所述令牌桶中不存在令牌时,更新所述令牌桶;
所述获取单元还用于从更新后的所述令牌桶中获取令牌。
9.根据权利要求8所述的实现装置,其特征在于,所述更新单元具体包括:
获取与所述读写操作指令对应的存储块的卷属性;
从所述卷属性中获取向所述令牌桶中添加令牌的速度;
根据所述令牌桶中添加令牌的速度,按照预设规则更新所述令牌桶。
10.根据权利要求9所述的实现装置,其特征在于,所述预设规则为:
T(i+1)=T(i)+V*Interval
T(i+1)=(T(i+1)>MAX)?MAX:T(i+1)
其中,T(i)表示第i次迭代时所述令牌桶中令牌的数量,Interval代表第i次迭代与第i+1次迭代之间的时间差,单位为秒,MAX表示所述令牌桶中令牌数量的最大值,MAX=α*V,V表示所述令牌桶中添加令牌的速度,单位为个/秒,α为大于1的任意自然数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710612235.XA CN107276827B (zh) | 2017-07-25 | 2017-07-25 | 一种分布式存储系统中Qos的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710612235.XA CN107276827B (zh) | 2017-07-25 | 2017-07-25 | 一种分布式存储系统中Qos的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107276827A true CN107276827A (zh) | 2017-10-20 |
CN107276827B CN107276827B (zh) | 2021-04-23 |
Family
ID=60078517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710612235.XA Active CN107276827B (zh) | 2017-07-25 | 2017-07-25 | 一种分布式存储系统中Qos的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107276827B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107948090A (zh) * | 2017-11-23 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种Ceph存储集群卷的带宽控制方法及装置 |
CN107959635A (zh) * | 2017-11-23 | 2018-04-24 | 郑州云海信息技术有限公司 | 一种基于令牌桶算法的iops控制方法及装置 |
CN108196954A (zh) * | 2017-12-28 | 2018-06-22 | 杭州时趣信息技术有限公司 | 一种文件读写方法、系统、设备及计算机存储介质 |
CN108647082A (zh) * | 2018-04-13 | 2018-10-12 | 中国民航信息网络股份有限公司 | 基于令牌机制的任务处理方法、装置、设备及介质 |
CN108804043A (zh) * | 2018-06-26 | 2018-11-13 | 郑州云海信息技术有限公司 | 分布式块存储系统带宽流量控制方法、装置、设备及介质 |
CN110011855A (zh) * | 2019-04-12 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 分布式集群卷QoS调节方法、装置、设备及存储介质 |
CN110018781A (zh) * | 2018-01-09 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 磁盘流控方法、装置以及电子设备 |
WO2019223445A1 (zh) * | 2018-05-22 | 2019-11-28 | 杭州海康威视数字技术股份有限公司 | 硬盘读写控制方法、装置、电子设备及存储介质 |
CN110799938A (zh) * | 2018-09-30 | 2020-02-14 | 深圳市大疆创新科技有限公司 | 令牌管理方法、装置、芯片及可移动平台 |
CN111290701A (zh) * | 2018-12-10 | 2020-06-16 | 杭州朗和科技有限公司 | 数据读写控制方法、装置、介质和电子设备 |
CN111901249A (zh) * | 2020-07-31 | 2020-11-06 | 深圳前海微众银行股份有限公司 | 业务限流方法、装置、设备及存储介质 |
CN112087401A (zh) * | 2020-09-10 | 2020-12-15 | 星辰天合(北京)数据科技有限公司 | 分布式存储中实现服务质量的方法和装置 |
CN112671666A (zh) * | 2020-11-16 | 2021-04-16 | 新华三大数据技术有限公司 | Io处理方法及装置 |
CN113031872A (zh) * | 2021-03-26 | 2021-06-25 | 山东英信计算机技术有限公司 | 一种存储系统的数据写入方法及相关装置 |
CN113645150A (zh) * | 2021-06-11 | 2021-11-12 | 中国电信股份有限公司 | 传输速率控制方法、装置、电子设备和可读存储介质 |
CN114465958A (zh) * | 2021-12-22 | 2022-05-10 | 天翼云科技有限公司 | 一种输入输出的控制方法、装置及介质 |
CN115378879A (zh) * | 2022-08-22 | 2022-11-22 | Oppo广东移动通信有限公司 | 数据控制方法及相关装置 |
CN115543761A (zh) * | 2022-11-28 | 2022-12-30 | 苏州浪潮智能科技有限公司 | 一种支持iops突发的方法、装置、电子设备及可读存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101005453A (zh) * | 2006-12-26 | 2007-07-25 | 华为技术有限公司 | 流量限制技术中刷新令牌桶的方法及装置 |
CN101159675A (zh) * | 2007-11-06 | 2008-04-09 | 中兴通讯股份有限公司 | 在ip多媒体子系统中实现提高用户服务质量的方法 |
WO2010051275A1 (en) * | 2008-10-31 | 2010-05-06 | Verizon Patent And Licensing Inc. | System and method for measuring interface utilization using policers |
CN101820380A (zh) * | 2009-02-26 | 2010-09-01 | 普然通讯技术(上海)有限公司 | 计量器的令牌更新方法 |
CN103929366A (zh) * | 2014-04-02 | 2014-07-16 | 华为技术有限公司 | 流量控制方法、装置及设备 |
CN104111800A (zh) * | 2013-04-18 | 2014-10-22 | 阿里巴巴集团控股有限公司 | 一种虚拟磁盘的io口调度方法及其调度装置 |
CN105653631A (zh) * | 2015-12-25 | 2016-06-08 | 北京奇虎科技有限公司 | 一种数据库管理方法与装置 |
CN105939286A (zh) * | 2016-03-28 | 2016-09-14 | 杭州迪普科技有限公司 | 令牌桶管理方法及装置 |
CN106233276A (zh) * | 2014-03-14 | 2016-12-14 | 亚马逊科技公司 | 网络可访问块存储装置的协调准入控制 |
CN106462601A (zh) * | 2014-03-31 | 2017-02-22 | 亚马逊科技公司 | 针对多盘区操作的原子写入 |
-
2017
- 2017-07-25 CN CN201710612235.XA patent/CN107276827B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101005453A (zh) * | 2006-12-26 | 2007-07-25 | 华为技术有限公司 | 流量限制技术中刷新令牌桶的方法及装置 |
CN101159675A (zh) * | 2007-11-06 | 2008-04-09 | 中兴通讯股份有限公司 | 在ip多媒体子系统中实现提高用户服务质量的方法 |
WO2010051275A1 (en) * | 2008-10-31 | 2010-05-06 | Verizon Patent And Licensing Inc. | System and method for measuring interface utilization using policers |
CN101820380A (zh) * | 2009-02-26 | 2010-09-01 | 普然通讯技术(上海)有限公司 | 计量器的令牌更新方法 |
CN104111800A (zh) * | 2013-04-18 | 2014-10-22 | 阿里巴巴集团控股有限公司 | 一种虚拟磁盘的io口调度方法及其调度装置 |
CN106233276A (zh) * | 2014-03-14 | 2016-12-14 | 亚马逊科技公司 | 网络可访问块存储装置的协调准入控制 |
CN106462601A (zh) * | 2014-03-31 | 2017-02-22 | 亚马逊科技公司 | 针对多盘区操作的原子写入 |
CN103929366A (zh) * | 2014-04-02 | 2014-07-16 | 华为技术有限公司 | 流量控制方法、装置及设备 |
CN105653631A (zh) * | 2015-12-25 | 2016-06-08 | 北京奇虎科技有限公司 | 一种数据库管理方法与装置 |
CN105939286A (zh) * | 2016-03-28 | 2016-09-14 | 杭州迪普科技有限公司 | 令牌桶管理方法及装置 |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107948090A (zh) * | 2017-11-23 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种Ceph存储集群卷的带宽控制方法及装置 |
CN107959635A (zh) * | 2017-11-23 | 2018-04-24 | 郑州云海信息技术有限公司 | 一种基于令牌桶算法的iops控制方法及装置 |
CN107948090B (zh) * | 2017-11-23 | 2021-04-30 | 郑州云海信息技术有限公司 | 一种Ceph存储集群卷的带宽控制方法及装置 |
CN107959635B (zh) * | 2017-11-23 | 2021-04-30 | 郑州云海信息技术有限公司 | 一种基于令牌桶算法的iops控制方法及装置 |
CN108196954A (zh) * | 2017-12-28 | 2018-06-22 | 杭州时趣信息技术有限公司 | 一种文件读写方法、系统、设备及计算机存储介质 |
CN110018781A (zh) * | 2018-01-09 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 磁盘流控方法、装置以及电子设备 |
CN108647082A (zh) * | 2018-04-13 | 2018-10-12 | 中国民航信息网络股份有限公司 | 基于令牌机制的任务处理方法、装置、设备及介质 |
WO2019223445A1 (zh) * | 2018-05-22 | 2019-11-28 | 杭州海康威视数字技术股份有限公司 | 硬盘读写控制方法、装置、电子设备及存储介质 |
CN108804043A (zh) * | 2018-06-26 | 2018-11-13 | 郑州云海信息技术有限公司 | 分布式块存储系统带宽流量控制方法、装置、设备及介质 |
WO2020062297A1 (zh) * | 2018-09-30 | 2020-04-02 | 深圳市大疆创新科技有限公司 | 令牌管理方法、装置、芯片及可移动平台 |
CN110799938A (zh) * | 2018-09-30 | 2020-02-14 | 深圳市大疆创新科技有限公司 | 令牌管理方法、装置、芯片及可移动平台 |
CN111290701B (zh) * | 2018-12-10 | 2022-06-24 | 杭州朗和科技有限公司 | 数据读写控制方法、装置、介质和电子设备 |
CN111290701A (zh) * | 2018-12-10 | 2020-06-16 | 杭州朗和科技有限公司 | 数据读写控制方法、装置、介质和电子设备 |
CN110011855A (zh) * | 2019-04-12 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 分布式集群卷QoS调节方法、装置、设备及存储介质 |
CN110011855B (zh) * | 2019-04-12 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 分布式集群卷QoS调节方法、装置、设备及存储介质 |
CN111901249A (zh) * | 2020-07-31 | 2020-11-06 | 深圳前海微众银行股份有限公司 | 业务限流方法、装置、设备及存储介质 |
CN111901249B (zh) * | 2020-07-31 | 2024-03-22 | 深圳前海微众银行股份有限公司 | 业务限流方法、装置、设备及存储介质 |
CN112087401A (zh) * | 2020-09-10 | 2020-12-15 | 星辰天合(北京)数据科技有限公司 | 分布式存储中实现服务质量的方法和装置 |
CN112087401B (zh) * | 2020-09-10 | 2024-05-28 | 北京星辰天合科技股份有限公司 | 分布式存储中实现服务质量的方法和装置 |
CN112671666A (zh) * | 2020-11-16 | 2021-04-16 | 新华三大数据技术有限公司 | Io处理方法及装置 |
CN112671666B (zh) * | 2020-11-16 | 2022-05-27 | 新华三大数据技术有限公司 | Io处理方法及装置 |
CN113031872A (zh) * | 2021-03-26 | 2021-06-25 | 山东英信计算机技术有限公司 | 一种存储系统的数据写入方法及相关装置 |
CN113645150B (zh) * | 2021-06-11 | 2023-06-27 | 天翼云科技有限公司 | 传输速率控制方法、装置、电子设备和可读存储介质 |
CN113645150A (zh) * | 2021-06-11 | 2021-11-12 | 中国电信股份有限公司 | 传输速率控制方法、装置、电子设备和可读存储介质 |
CN114465958A (zh) * | 2021-12-22 | 2022-05-10 | 天翼云科技有限公司 | 一种输入输出的控制方法、装置及介质 |
CN114465958B (zh) * | 2021-12-22 | 2024-04-26 | 天翼云科技有限公司 | 一种输入输出的控制方法、装置及介质 |
CN115378879A (zh) * | 2022-08-22 | 2022-11-22 | Oppo广东移动通信有限公司 | 数据控制方法及相关装置 |
CN115543761A (zh) * | 2022-11-28 | 2022-12-30 | 苏州浪潮智能科技有限公司 | 一种支持iops突发的方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107276827B (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107276827A (zh) | 一种分布式存储系统中Qos的实现方法及装置 | |
CN107395665A (zh) | 一种区块链业务受理及业务共识方法及装置 | |
US10901619B2 (en) | Selecting pages implementing leaf nodes and internal nodes of a data set index for reuse | |
CN105159610B (zh) | 大规模数据处理系统及方法 | |
JP7061693B2 (ja) | グラフデータに基づくタスクスケジューリング方法、装置、プログラム及び機器 | |
CN106095589B (zh) | 一种分配分区的方法、装置及系统 | |
CN104636286B (zh) | 用于数据访问的方法和设备 | |
CN105099951B (zh) | 一种资源调度方法及管理设备 | |
CN105264509A (zh) | 融合网络中的自适应中断联合 | |
CN104811473B (zh) | 一种创建虚拟非易失性存储介质的方法、系统及管理系统 | |
CN106990926A (zh) | 一种固态硬盘磨损均衡的处理方法 | |
CN109815389A (zh) | 应用规则引擎的节点匹配方法、装置以及计算机设备 | |
CN103442090A (zh) | 一种数据分散存储的云计算系统 | |
CN110162292A (zh) | 语音播报方法及装置 | |
CN107426321A (zh) | 一种分布式存储系统配额分配方法及装置 | |
CN109471843A (zh) | 一种元数据缓存方法、系统及相关装置 | |
CN107171955A (zh) | 网络中数据链路的选择方法及系统 | |
WO2021259246A1 (zh) | 资源调度方法和装置、电子设备、计算机可读存储介质 | |
CN109587072A (zh) | 分布式系统全局限速系统及方法 | |
CN105208093B (zh) | 一种云操作系统中计算资源池的构建系统 | |
CN110474845A (zh) | 流表项淘汰方法及相关装置 | |
CN110109800A (zh) | 一种服务器集群系统的管理方法及装置 | |
CN108241535A (zh) | 资源管理的方法、装置及服务器设备 | |
CN114745392A (zh) | 流量调度方法 | |
CN107026897A (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 |