[发明专利]存储系统的流控方法以及计算机可读存储介质在审
申请号: | 201911367540.2 | 申请日: | 2019-12-26 |
公开(公告)号: | CN111190541A | 公开(公告)日: | 2020-05-22 |
发明(设计)人: | 张廷全;纪志祥;沈海嘉;吕方川 | 申请(专利权)人: | 天津中科曙光存储科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F9/50 |
代理公司: | 北京德恒律治知识产权代理有限公司 11409 | 代理人: | 章社杲;卢军峰 |
地址: | 300000 天津市滨海新区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储系统 方法 以及 计算机 可读 存储 介质 | ||
本发明公开了一种存储系统的流控方法以及计算机可读存储介质,该方法包括:将分布式对象存储系统的io拆分为不同类型的对象,按照目标节点将所述对象划分到不同的组;对每个组内的每种类型的对象分别建立多个时间队列;根据权重计算出要处理的一个类型的对象,按所述多个时间队列的优先级顺序依次检测各个时间队列中是否存在要处理的对象,如果有则对所述要处理的对象进行处理。本发明通过上述技术方案,至少能够保证io处理时延均匀。
技术领域
本发明涉分布式存储技术领域,具体来说,涉及一种存储系统的流控方法以及计算机可读存储介质。
背景技术
分布式对象存储系统中,涉及到一个io(输入/输出,Input/Output)拆分(把这部分称为分发模块)为多个对象,每个对象发送到对应的目标存储节点上,存储节点负责数据在磁盘上的读、写,磁盘的处理能力有限,在对象的发送速度超过目标节点处理能力时,超出的对象会被返回,需要分发模块再次重试,通常这种重试的对象已经消耗了更多时间,按照动态wrr流控算法:不同类型io(如数据、元数据读、写等)拆分出不同类型的对象,每种类型一个缓冲队列,根据队列深度调整各自队列的处理权重,然后根据wrr算法进行队列调度。然而这种方法会存在这种情况:已消耗了更多时间的老的对象,可能排在了很多新对象的后面,待前面的新对象处理完之后才会处理到这个老对象,导致对象的处理时延波动大,有的对象完成时间很短、有的时间很长,不利于吞吐量的提升。
发明内容
针对相关技术的上述问题,本发明提出一种存储系统的流控方法以及计算机可读存储介质,至少能够保证io处理时延均匀。
本发明的技术方案是这样实现的:
根据本发明的一个方面,提供了一种分布式存储系统的流控方法,包括:
将分布式对象存储系统的io拆分为不同类型的对象,按照目标节点将所述对象划分到不同的组;
对每个组内的每种类型的对象分别建立多个时间队列;
根据权重计算出要处理的一个类型的对象,按所述多个时间队列的优先级顺序依次检测各个时间队列中是否存在要处理的对象,如果有则对所述要处理的对象进行处理。
其中,根据对象的处理时间,相应设置所述多个时间队列中的每个时间队列的对应时间。
在一个实施例中,在每个周期内,同一类型的对象在各个所述时间队列中的数量相同。
在一个实施例中,所述多个时间队列的数量越多,所述每个时间队列的对应时间越小。
在一个实施例中,分布式存储系统的流控方法还包括:
判断对应的目标上是否无对象排队待发,
如果判断为无对象排队,则当前线程不再发送对象。
其中,从相应的时间队列的头部取出所述要处理的对象进行处理;在对所述要处理的对象进行处理之后,需要再次投递所述对象时,在相应的时间队列的尾部加入所述对象。
根据本发明的另一方面,提供了一种计算机可读存储介质,其存储有可由电子设备执行的程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行上述方法的步骤。
本发明的上述技术方案,通过采用动态wrr有序排队流控方式并结合各种类型的对象使用时间队列的方式,实现了对象分段有序排列,这样,可以最大限度保证先到的io,优先得到处理,保证了io处理时延均匀。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津中科曙光存储科技有限公司,未经天津中科曙光存储科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911367540.2/2.html,转载请声明来源钻瓜专利网。