基于分布式存储的QoS方法及系统[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202110032461.7
(22)申请日 2021.01.11
(71)申请人 北京同有飞骥科技股份有限公司
地址 100000 北京市海淀区地锦路9号院2
号楼-1至4层101
(72)发明人 李昆鹏 张承冰 杨恒 宣旭迎 
杨宏兵 袁鹏飞 文中领 周泽湘 
(74)专利代理机构 北京方韬法业专利代理事务
所(普通合伙) 11303
代理人 党小林
(51)Int.Cl.
G06F  3/06(2006.01)
(54)发明名称
基于分布式存储的QoS方法及系统
(57)摘要
本发明提供了一种基于分布式存储的QoS方
法及系统。该方法包括:获取到来自客户端的IO
请求时,将获取到的IO请求存入依客户端构建的
二级队列;对每个客户端所对应的请求队列,构
建预留标签二叉树权重标签二叉树及上限标签
二叉树;根据处于预留标签二叉树或者权重标签
二叉树的节点是否符合出队条件,确定请求是否
出队。本发明提供的基于分布式存储的QoS方法
及系统使在某客户端出现突发IO请求时,能使其
在不影响预留的情况下,更快相应该客户端的请
求。权利要求书2页  说明书5页  附图2页CN 112684988 A 2021.04.20
C N  112684988
A
1.一种基于分布式存储的QoS方法,其特征在于,包括:
获取到来自客户端的IO请求时,将获取到的IO请求存入依客户端构建的二级队列;对每个客户端所对应的请求队列,构建预留标签二叉树、权重标签二叉树及上限标签二叉树,其中,且预留标签二叉树、权重标签二叉树及上限标签二叉树均根据节点的标签取值,确定请求队列中请求在其中的存储位置;
根据处于预留标签二叉树或者权重标签二叉树的节点是否符合出队条件,确定请求是否出队。
2.根据权利要求1所述的基于分布式存储的QoS方法,其特征在于,预留标签二叉树、权重标签二叉树及上限标签二叉树均为完全二叉树。
3.根据权利要求1所述的基于分布式存储的QoS方法,其特征在于,预留标签二叉树中的标签取值,根据如下公式调整:
其中,表示第i个资源的第n个请求的预留标签取值,r i 表示第i个资源上的预设预留
值,ρi 表示第i个资源发送到其他服务器的请求个数,
t表示当前时间。4.根据权利要求3所述的集约分布式存储的QoS方法,其特征在于,对于预留标签二叉树,出队条件包括:若当其根节点的队首元素的预留标签小于或等于当前时间,则可以出队。
5.根据权利要求1所述的基于分布式存储的QoS方法,其特征在于,权重标签二叉树中的标签取值,根据如下公式调整:
其中,W i n 表示第i个资源的第n个请求的权重标签取值,w i 表示第i个资源上的预设权重值,δi 表示第i个资源发送到其他服务器的请求个数,
s i 表示第i个资源的突发可调参数,t表示当前时间。
6.根据权利要求5所述的基于分布式存储的QoS方法,其特征在于,对于权重标签二叉树,出队条件包括:某个节点的队元素的权重标签小于或等于当前时间,则将权重标签二叉树中对应节点的ready变为true,并上浮到根节点;并将上限标签二叉树中对应节点的ready变为true,并下沉到叶子节点。
7.根据权利要求1所述的基于分布式存储的QoS方法,其特征在于,上限标签二叉树的标签取值,根据如下公式调整:
其中,表示第i个资源的第n个请求的上限标签取值,l i 表示第i个资源上的预设权重值,δi 表示第i个资源发送到其他服务器的请求个数,
s i 表示第i个资源的突发可调参数,t表示当前时间。
8.根据权利要求1所述的基于分布式存储的QoS方法,其特征在于,二级队列包括:客户
端队列,以及与客户端队列中的客户端相对应的请求队列。
9.一种基于分布式存储的QoS系统,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至8任意一项所述的基于分布式存储的QoS方法。
基于分布式存储的QoS方法及系统
技术领域
[0001]本发明涉及QoS技术领域,特别是涉及一种基于分布式存储的QoS方法及系统。
背景技术
[0002]QoS(Quality of Service)即服务质量或配额,为服务系统提供针对不同用户、不同数据流的不同权重服务的能力。在电信领域,多媒体服务领域内QoS能提供不同需求的定制服务,提供不同优先级;在存储领域,QoS能够根据系统配置,对I/O数据流按照权重进行资源分配,从而提高存储的服务质量。云计算时代,由于数据量规模庞大、资源类型复杂及云计算构建具有可变性和不可预测性,资源调度变得更加复杂且更为重要。
[0003]在分布式存储领域,块存储提供了将卷映射到主机使用的能力。由于资源的有限性,分布式存储系统同样需要对资源进行服务质量管理。当下流行的分布式存储系统中,针对块存储的QoS的定制算法存在实现成本过高、实现复杂等问题。
[0004]现有QoS算法主要基于两种算法,令牌桶算法及dmClock算法。
[0005]令牌桶算法是网络流量整形和速率限制中最常使用的一种算法。经典算法的原理是通过监督流入存储端端口的流量速率,对超出的流量进行限制,从而调配各客户端I/O,使得端口IOPS控制在预设范围。大小固定的令牌桶可自行按照系统预设的速度源源不断地产生令牌。当桶中的令牌数量超过最大容量限制,新的令牌将会被舍弃。如果令牌桶中存在令牌,则允许发送流量或接受I/O;而如果令牌桶中不存在令牌,则不允许发送流量或接受I/O。
[0006]dmClock算法是mClock算法的分布式版本。mClock算法将QoS定义为保证I/O资源的界定参数,分别是权重(weight或proportion)、预留(reservation)和上限(limit)等等。其基本思想是首先保证预留IOPS,然后对于没有超过上限IOPS的资源,按照权重分配IOPS。当资源I/O请求到达后,根据QoS三个参数会计算这三个指标,公式为:
[0007]
[0008]
[0009]
n以此类推,分别[0010]其中,表示第i个资源的第r个请求的reservation标签,和P
i
代表limit标签和proportion标签。r,l和w分别代表用户预设的reservation,limit和weight参数。
[0011]dmClock算法将应用场景变为了分布式存储,虚拟机将I/O请求发送到存储集的某一个节点上。其指标公式改进为:
[0012]
[0013]
[0014]
[0015]其中,ρi 和δi 是包含在I/O命令中的信息。
因为分布式系统中存在多个服务器,发往同一个服务器的两次I/O之间其他服务器可能已经完成了预留值或最小值,所以需要服务器将每次I/O完成调度信息后基于预留值以及权重返还给客户端,客户端分别叠加计算为ρi 和δi ,
再包含在I/O命令中发送给服务器。发明内容
[0016]本发明要解决的技术问题是提供一种基于分布式存储的QoS方法及系统,使在某客户端出现突发IO请求时,能使其在不影响预留的情况下,更快相应该客户端的请求。
[0017]为解决上述技术问题,本发明提供了一种基于分布式存储的QoS方法,所述方法包括:获取到来自客户端的IO请求时,将获取到的IO请求存入依客户端构建的二级队列;对每个客户端所对应的请求队列,构建预留标签二叉树、权重标签二叉树及上限标签二叉树,其中,且预留标签二叉树、权重标签二叉树及上限标签二叉树均根据节点的标签取值,确定请求队列中请求在其中的存储位置;根据处于预留标签二叉树或者权重标签二叉树的节点是否符合出队条件,确定请求是否出队。
[0018]在一些实施方式中,预留标签二叉树、权重标签二叉树及上限标签二叉树均为完全二叉树。
[0019]在一些实施方式中,预留标签二叉树中的标签取值,根据如下公式调整:
[0020]
[0021]其中,表示第i个资源的第n个请求的预留标签取值,r i 表示第i个资源上的预设预留值,ρi 表示第i个资源发送到其他服务器的请求个数,
t表示当前时间。[0022]在一些实施方式中,对于预留标签二叉树,出队条件包括:若当其根节点的队首元素的预留标签小于或等于当前时间,则可以出队。
[0023]在一些实施方式中,权重标签二叉树中的标签取值,根据如下公式调整:
[0024]
[0025]
其中,W i n 表示第i个资源的第n个请求的权重标签取值,w i 表示第i个资源上的预设权重值,δi 表示第i个资源发送到其他服务器的请求个数,
s i 表示第i个资源的突发可调参数,t表示当前时间。
[0026]在一些实施方式中,对于权重标签二叉树,出队条件包括:某个节点的队元素的权重标签小于或等于当前时间,则将权重标签二叉树中对应节点的ready变为true,并上浮到

本文发布于:2024-09-22 23:35:55,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/464877.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:标签   二叉树   请求   权重   资源   预留   算法
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议