一种支持IOPS突发的方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:36166336 阅读:39 留言:0更新日期:2022-12-31 20:16
本发明专利技术实施例提供了一种支持IOPS突发的方法、装置、电子设备及可读存储介质,包括:响应于针对各个存储卷的I/O读写操作,记录I/O读写操作的当前I/O读写时间和I/O数量;计算当前I/O读写时间和上一次I/O读写时间的时间差,并根据时间差与预设令牌流入桶速率,更新存储卷主桶的容量和存储卷突发速率桶的容量;根据I/O数量和更新后的存储卷主桶的容量、存储卷突发容量桶的容量以及存储卷突发速率桶的容量的大小关系,确定I/O读写操作中I/O的状态;I/O的状态用于反映IOPS的状态;根据I/O的状态,对I/O进行相应处理。通过上述方法能够控制IOPS的上限、IOPS过量突发时的速率、持续时间和间隔时间。隔时间。隔时间。

【技术实现步骤摘要】
一种支持IOPS突发的方法、装置、电子设备及可读存储介质


[0001]本专利技术实施例涉及存储
,特别是涉及一种支持IOPS突发的方法、一种支持IOPS突发的装置、一种电子设备以及一种计算机可读存储介质。

技术介绍

[0002]在传统端到端网络通信中,传统的IP(Internet Protocol 网际互连协议)网络不会区别对待所有报文,同时,网络设备处理报文采用的策略是先进先出,它依据报文到达时间的先后顺序分配转发所需要的资源,并且所有的报文共享网络和设备的带宽等资源。这样就会导致网络发生拥塞时,一些关键业务的通信质量得不到保障,进而影响客户体验,因此需要网络QoS(Quality of Service 服务质量)来解决这个问题。另外,存储QoS与网络QoS类似,存储QoS确保特定应用程序或工作负载始终能够获得特定的性能级别,对于存储集群,此级别通常表示为IOPS(Input/Output Operations Per Second 每秒进行读写操作的次数),IOPS可以为不同的应用分配不同级别QoS的卷,从而通过为不同的卷限流来指定优先级别,进而确保在当前存储固定处理能力、固定带宽等条件下,高优先级的应用能够获得更好的读写性能。
[0003]在存储集群中,同样经常遇到I/O(Input/Output 输入/输出)风暴的问题。一般关系型数据库(Relational database)所产生的 IOPS 峰值都是很尖的凸起,数据库加载和表扫描需要的就是一个峰值形态的数据吞吐操作,在启动虚拟机时,也会产生I/O风暴,其中I/O风暴发生时伴随的现象有:在短时间内,只有少量存储卷会产生I/O风暴;I/O风暴的持续时间不长;在大部分情况下,整个存储集群的负载不高,因此如何解决I/O风暴和限流之间的矛盾,成为存储技术人员需要解决的一个问题。

技术实现思路

[0004]本专利技术实施例是提供一种支持IOPS突发的方法、装置、电子设备以及计算机可读存储介质,以解决I/O风暴和限流之间的矛盾的问题。
[0005]本专利技术实施例公开了一种支持IOPS突发的方法,应用于存储集群,所述存储集群包括一个或多个存储卷和令牌桶,所述令牌桶内有令牌,所述令牌桶包括存储卷主桶、存储卷突发容量桶和存储卷突发速率桶,所述存储卷主桶用于控制所述存储卷的最大IOPS,所述存储卷突发容量桶用于控制所述存储卷的IOPS突发时长,所述存储卷突发速率桶用于控制所述存储卷的IOPS突发速率,所述方法包括:响应于针对各个所述存储卷的I/O读写操作,记录所述I/O读写操作的当前I/O读写时间和I/O数量;计算所述当前I/O读写时间和上一次I/O读写时间的时间差,并根据所述时间差与预设令牌流入桶速率,更新所述存储卷主桶的容量和所述存储卷突发速率桶的容量;根据所述I/O数量和更新后的所述存储卷主桶的容量、所述存储卷突发容量桶的容量以及所述存储卷突发速率桶的容量的大小关系,确定所述I/O读写操作中I/O的状态;
所述I/O的状态用于反映IOPS的状态;根据所述I/O的状态,对所述I/O进行相应处理。
[0006]可选地,在所述响应于针对各个所述存储卷的I/O读写操作,记录所述I/O读写操作的当前I/O读写时间和I/O数量之前,还包括:获取所述存储集群的配置和规模;根据所述存储集群的配置和规模,得到所述存储集群的I/O总处理能力;其中,所述存储集群的I/O总处理能力为基于所述令牌桶内的令牌数表示;当所述存储集群的所述I/O总处理能力所对应的令牌数大于或等于在所述存储集群中创建所述存储卷所需要的预设令牌数值时,在所述存储集群中创建存储卷;当所述存储集群的所述I/O总处理能力所对应的令牌数小于在所述存储集群中创建所述存储卷所需要的预设令牌数值时,禁止在所述存储集群中创建存储卷。
[0007]可选地,所述存储集群的所述I/O总处理能力包括最大IOPS处理能力和突发IOPS处理能力,其中,所述最大IOPS处理能力和所述突发IOPS处理能力所对应的令牌数由所述I/O总处理能力所分配。
[0008]可选地,还包括:当在所述存储集群中创建所述存储卷时,设置所述存储卷的最大IOPS和突发IOPS。
[0009]可选地,所述存储卷的最大IOPS和突发IOPS对应消耗所述存储集群的最大IOPS处理能力和突发IOPS处理能力所对应的令牌数。
[0010]可选地,所述令牌桶内的令牌数为所述令牌桶的容量,所述存储卷主桶的容量对应为所述存储卷主桶内的令牌数,所述存储卷突发容量桶的容量对应为所述存储卷突发容量桶内的令牌数,以及,所述存储卷突发速率桶的容量对应为所述存储卷突发速率桶内的令牌数。
[0011]可选地,所述预设令牌流入桶速率包括预设令牌流入主桶速率,所述计算所述当前I/O读写时间和上一次I/O读写时间的时间差,并根据所述时间差与预设令牌流入桶速率,更新所述存储卷主桶的容量和所述存储卷突发速率桶的容量,包括:响应于针对各个所述存储卷的I/O读写操作,得到所述I/O读写操作的当前I/O读写时间;根据所述当前I/O读写时间和上一次I/O读写时间,计算所述当前I/O读写时间和所述上一次I/O读写时间的时间差;根据所述时间差与所述预设令牌流入主桶速率,更新所述存储卷主桶的容量;其中,所述存储卷主桶的容量为所述时间差与所述预设令牌流入主桶速率的乘积。
[0012]可选地,所述预设令牌流入桶速率包括预设令牌流入突发桶速率,所述计算所述当前I/O读写时间和上一次I/O读写时间的时间差,并根据所述时间差与预设令牌流入桶速率,更新所述存储卷主桶的容量和所述存储卷突发速率桶的容量,包括:响应于针对各个所述存储卷的I/O读写操作,得到所述I/O读写操作的当前I/O读写时间;根据所述当前I/O读写时间和上一次I/O读写时间,计算所述当前I/O读写时间和所述上一次I/O读写时间的时间差;
根据所述时间差与所述预设令牌流入突发桶速率,更新所述存储卷突发速率桶的容量;其中,所述存储卷突发速率桶的容量为所述时间差与所述预设令牌流入突发桶速率的乘积。
[0013]可选地,所述存储卷突发容量桶设置有桶容量恢复定时器,包括:当发生所述I/O读写操作的I/O数量小于或等于所述存储卷主桶的容量,消耗所述存储卷主桶内的令牌数时,若所述存储卷突发容量桶的桶容量恢复定时器未启动,则启动所述桶容量恢复定时器;当所述I/O发生突发的突发时间间隔达到预设突发间隔时长时,将所述存储卷突发容量桶的容量状态更新为满桶状态,并且停止使用所述桶容量恢复定时器。
[0014]可选地,所述存储卷突发容量桶设置有桶容量清空定时器,包括:当发生所述I/O读写操作的I/O数量大于所述存储卷主桶的容量,并且小于所述存储卷突发容量桶的容量和所述存储卷突发速率桶的容量,消耗所述存储卷突发容量桶的令牌数和所述存储卷突发速率桶的令牌数时,若所述存储卷突发容量桶的桶容量清空定时器未启动,则启动所述桶容量清空定时器;当所述I/O发生突发的突发时长达到预设突发时长时,将所述存储卷突发容量桶的容量状态更新为本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持IOPS突发的方法,其特征在于,应用于存储集群,所述存储集群包括一个或多个存储卷和令牌桶,所述令牌桶内有令牌,所述令牌桶包括存储卷主桶、存储卷突发容量桶和存储卷突发速率桶,所述存储卷主桶用于控制所述存储卷的最大IOPS,所述存储卷突发容量桶用于控制所述存储卷的IOPS突发时长,所述存储卷突发速率桶用于控制所述存储卷的IOPS突发速率,所述方法包括:响应于针对各个所述存储卷的I/O读写操作,记录所述I/O读写操作的当前I/O读写时间和I/O数量;计算所述当前I/O读写时间和上一次I/O读写时间的时间差,并根据所述时间差与预设令牌流入桶速率,更新所述存储卷主桶的容量和所述存储卷突发速率桶的容量;根据所述I/O数量和更新后的所述存储卷主桶的容量、所述存储卷突发容量桶的容量以及所述存储卷突发速率桶的容量的大小关系,确定所述I/O读写操作中I/O的状态;所述I/O的状态用于反映IOPS的状态;根据所述I/O的状态,对所述I/O进行相应处理。2.根据权利要求1所述的方法,其特征在于,在所述响应于针对各个所述存储卷的I/O读写操作,记录所述I/O读写操作的当前I/O读写时间和I/O数量之前,还包括:获取所述存储集群的配置和规模;根据所述存储集群的配置和规模,得到所述存储集群的I/O总处理能力;其中,所述存储集群的I/O总处理能力为基于所述令牌桶内的令牌数表示;当所述存储集群的所述I/O总处理能力所对应的令牌数大于或等于在所述存储集群中创建所述存储卷所需要的预设令牌数值时,在所述存储集群中创建存储卷;当所述存储集群的所述I/O总处理能力所对应的令牌数小于在所述存储集群中创建所述存储卷所需要的预设令牌数值时,禁止在所述存储集群中创建存储卷。3.根据权利要求2所述的方法,其特征在于,所述存储集群的所述I/O总处理能力包括最大IOPS处理能力和突发IOPS处理能力,其中,所述最大IOPS处理能力和所述突发IOPS处理能力所对应的令牌数由所述I/O总处理能力所分配。4.根据权利要求2所述的方法,其特征在于,还包括:当在所述存储集群中创建所述存储卷时,设置所述存储卷的最大IOPS和突发IOPS。5.根据权利要求4所述的方法,其特征在于,所述存储卷的最大IOPS和突发IOPS对应消耗所述存储集群的最大IOPS处理能力和突发IOPS处理能力所对应的令牌数。6.根据权利要求1所述的方法,其特征在于,所述令牌桶内的令牌数为所述令牌桶的容量,所述存储卷主桶的容量对应为所述存储卷主桶内的令牌数,所述存储卷突发容量桶的容量对应为所述存储卷突发容量桶内的令牌数,以及,所述存储卷突发速率桶的容量对应为所述存储卷突发速率桶内的令牌数。7.根据权利要求1所述的方法,其特征在于,所述预设令牌流入桶速率包括预设令牌流入主桶速率,所述计算所述当前I/O读写时间和上一次I/O读写时间的时间差,并根据所述时间差与预设令牌流入桶速率,更新所述存储卷主桶的容量和所述存储卷突发速率桶的容量,包括:响应于针对各个所述存储卷的I/O读写操作,得到所述I/O读写操作的当前I/O读写时间;
根据所述当前I/O读写时间和上一次I/O读写时间,计算所述当前I/O读写时间和所述上一次I/O读写时间的时间差;根据所述时间差与所述预设令牌流入主桶速率,更新所述存储卷主桶的容量;其中,所述存储卷主桶的容量为所述时间差与所述预设令牌流入主桶速率的乘积。8.根据权利要求1所述的方法,其特征在于,所述预设令牌流入桶速率包括预设令牌流入突发桶速率,所述计算所述当前I/O读写时间和上一次I/O读写时间的时间差,并根据所述时间差与预设令牌流入桶速率,更新所述存储卷主桶的容量和所述存储卷突发速率桶的容量,包括:响应于针对各个所述存储卷的I/O读写操作,得到所述I/O读写操作的当前I/O读写时间;根据所述当前I/O读写时间和上一次I/O读写时间,计算所述当前I/O读写时间和所述上一次I/O读写时间的时间差;根据所述时间差与所述预设令牌流入突发桶速率,更新所述存储卷突发速率桶的容量;其中,所述存储卷突发速率桶的容量为所述时间差与所述预设令牌流入突发桶速率的乘积。9.根据权利要求1所述的方法,其特征在于,所述存储卷突发容量桶设置有桶容量恢复定时器,包括:当发生所述I/O读写操作的I/O数量小于或等于所述存储卷主桶的容量,消耗所述存储卷主桶内的令牌数时,若所述存储卷突发容量桶的桶容量恢复定时器未启动,则启动所述桶容量恢复定时器;当所述I/O发生突发的突发时间间隔达到预设突发间隔时长时,将所述存储卷突发容量桶的容量状态更新为满桶状态,并且停止使用所述桶容量恢复定时器。10.根据权利要求1所述的方法,其特征在于,所述存储卷突发容量桶设置有桶容量清空定时器,包括:当发生所述I/O读写操作的I/O数量大于所述存储卷主桶的容量,并且小于所述存储卷突发容量桶的容量和所述存储卷突发速率桶的容量,消耗所述存储卷突发容量桶的令牌数和所述存储卷突发速率桶的令牌数时,若所述存储卷突发容量桶的桶容量清空定时器未启动,则启动所述桶容量清空定时器;当所述I/O发生突发的突发时长达到预设突发时长时,将所述存储卷突发容量桶的容量状态更新为空桶状态,并且停止使用所述桶容量清空定时器。11.根据权利要求1所述的方法,其特征...

【专利技术属性】
技术研发人员:陈东河赵鹏冯瑞鹏
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1