[发明专利]一种基于虚拟磁盘层的IO流控制方法及装置有效

专利信息
申请号: 201510549101.9 申请日: 2015-08-31
公开(公告)号: CN105159609A 公开(公告)日: 2015-12-16
发明(设计)人: 王俊 申请(专利权)人: 北京神州云科数据技术有限公司
主分类号: G06F3/06 分类号: G06F3/06
代理公司: 北京路浩知识产权代理有限公司 11002 代理人: 李相雨
地址: 100085 北京*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 虚拟 磁盘 io 控制 方法 装置
【说明书】:

技术领域

发明涉及计算机技术领域,具体涉及一种基于虚拟磁盘层的IO流控制方法及装置。

背景技术

传统的磁盘驱动建立在通用块设备层之下,当外部发送到块设备接口的OutstandingIO(未完成的IO)超出磁盘硬件处理能力时,缓存到块设备队列Queue中,队列的深度QueueDepth可以设置,当块设备队列Queue中缓存的IO个数超出QueueDepth长度时,阻塞IO进程,直到因为下层IO处理完毕使得队列长度小于QueueDepth,才能重新唤醒IO进程。

但是,传统的磁盘驱动缓存队列方法有以下缺陷:第一,当缓存的IO个数超出QueueDepth长度时,导致执行IO的进程阻塞。在中高端存储设备上对随机IOPS(Input/OutputOperationsPerSecond,即每秒进行读写操作的次数)的要求很高,要求达到10-100万级别,若发生进程阻塞-唤醒,会对IOPS处理能力造成极大影响,导致性能不达标;第二,单个缓存队列会造成读IO等待写IO的情况,使得读IO的响应时间增大并且不稳定。

发明内容

针对现有技术中存在的容易导致执行IO的进程阻塞以及在读写并发情况下读IO的相应时间大且不稳定的缺陷,本发明提供了一种基于虚拟磁盘层的IO流控制方法及装置。

一方面,本发明提供的一种基于虚拟磁盘层的IO流控制方法,包括:

建立虚拟磁盘;

在所述虚拟磁盘中设置读IO队列和写IO队列;

执行IO读时,将读IO缓存到读IO队列中,执行写IO时,将写IO缓存到写IO队列中。

进一步地,所述虚拟磁盘,将磁盘的几何空间划分为保留区和数据区。

进一步地,所述保留区包括:超级块区、位图bitmap索引区、坏块重定向索引区以及坏块重定向数据区。

进一步地,所述将读IO缓存到读IO队列中,将写IO缓存到写IO队列中的步骤之前,还包括:

针对每一个所述队列设定最大正在处理IO个数的值threshold;

判断所述队列的正在处理IO个数是否大于threshold值,若是,则不执行,否则,依次发送待执行的IO到所述队列中,直到所述队列的正在处理IO个数等于threshold值。

进一步地,所述队列接收发送待执行的IO时,相应的正在处理IO个数加1,完成IO时,相应的正在处理IO个数减1。

另一方面,本发明还提供一种基于虚拟磁盘层的IO流控制装置,包括:

建立模块,用于建立虚拟磁盘;

设置模块,用于在所述虚拟磁盘中设置读IO队列和写IO队列;

存储模块,用于执行IO读时,将读IO缓存到读IO队列中,执行写IO时,将写IO缓存到写IO队列中。

进一步地,所述建立模块具体用于:所述虚拟磁盘,将磁盘的几何空间划分为保留区和数据区。

进一步地,所述建立模块具体用于:所述保留区包括:超级块区、位图bitmap索引区、坏块重定向索引区以及坏块重定向数据区。

进一步地,所述存储模块还用于:

针对每一个所述队列设定最大正在处理IO个数的值threshold;

判断所述队列的正在处理IO个数是否大于threshold值,若是,则不执行,否则,依次发送待执行的IO到所述队列中,直到所述队列的正在处理IO个数等于threshold值。

进一步地,所述存储模块还用于:所述队列接收发送待执行的IO时,相应的正在处理IO个数加1,完成IO时,相应的正在处理IO个数减1。

本发明提供的一种基于虚拟磁盘层的IO流控制方法及装置,通过引入虚拟磁盘,在所述虚拟磁盘中设置读IO队列和写IO队列;执行读IO时,将读IO缓存到读IO队列中,执行写IO时,将写IO缓存到写IO队列中。可以实现应用于下层的任何类型的磁盘驱动,都不会产生阻塞进程导致的性能问题,使得IOPS性能在磁盘驱动上不产生瓶颈。同时,降低了读写并发情况下读IO的响应时间,提高了读IO响应时间的稳定性。

附图说明

通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:

图1是本发明一个实施例中一种基于虚拟磁盘层的IO流控制方法的流程示意图;

图2是本发明一个实施例中发送bio的队列接口函数流程示意图;

图3是本发明一个实施例中一种基于虚拟磁盘层的IO流控制装置的结构示意图。

具体实施方式

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神州云科数据技术有限公司,未经北京神州云科数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510549101.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top