[发明专利]一种处理IO请求的方法及装置有效
申请号: | 201810101627.4 | 申请日: | 2018-02-01 |
公开(公告)号: | CN108459826B | 公开(公告)日: | 2020-12-29 |
发明(设计)人: | 陈武雄 | 申请(专利权)人: | 杭州宏杉科技股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/0873 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310053 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 处理 io 请求 方法 装置 | ||
本申请提供一种处理IO请求的方法及装置,应用于存储设备,所述方法包括:接收读请求,确定所述读请求是否命中写缓存空间;其中,所述写缓存空间中的数据为处理写请求时写入的脏数据;如果未命中所述写缓存空间,确定所述读请求中的逻辑地址对应的物理地址;基于所述物理地址确定所述读请求是否命中读缓存空间;如果未命中所述读缓存空间,基于所述物理地址从磁盘将所述读请求的待读取数据读取到所述读缓存空间,并返回所述待读取数据。本申请技术方案减少了相同数据对缓存空间的占用,使得缓存空间可以缓存更多数据,并减少了从磁盘读取数据的操作次数,从而节省系统开销,提高了存储设备的性能。
技术领域
本申请涉及存储领域,特别涉及一种处理IO请求的方法及装置。
背景技术
存储设备能为用户提供方便快捷的数据写入、数据保护和数据读取的功能。其中,实现数据的快速读写是衡量存储设备性能的重要标准。
通常情况下,可以采用缓存技术来提高处理IO(Input/Output,输入/输出)请求的响应速度,进而提高存储设备性能。存储设备上的多个LUN(Logical Unit Number,逻辑单元号)分别具有对应的缓存空间。
当接收到写请求时,可以首先将该写请求中的待写入数据写入到缓存空间,后续再从缓存空间写入到磁盘空间中。
当接收到读请求时,可以首先确定该读请求是否命中缓存,并在命中缓存的情况下,直接从缓存空间中返回该读请求的待读取数据。若未命中缓存,则可以从磁盘空间中读取上述待读取数据到缓存空间,然后返回上述待读取数据。写入到缓存空间的待读取数据可减少后续处理请求该待读取数据的读请求的响应时间。
存储设备可以利用重删技术来检查写入的数据是否重复,并对于重复的数据只保留唯一的副本,从而节省存储设备的磁盘空间。经过重删后,存储设备上的从多个LUN写入的相同数据会被存储到唯一的物理空间中,则后续处理针对多个LUN中的上述数据的读请求,会从上述物理空间中多次读取上述数据到多个LUN对应的缓存空间中。
在这种情况下,存储设备的缓存空间中存在许多重复的数据,导致缓存空间的实际利用率低下。此外,多次从磁盘空间读取相同数据,也会增加磁盘的读写命令,增大的系统开销,从而影响存储设备的性能。
发明内容
有鉴于此,本申请提供一种处理IO请求的方法及装置,用以提高缓存空间的实际利用率,并减少因多次从磁盘空间读取相同数据而产生的系统开销,从而提高存储设备的性能。
具体地,本申请是通过如下技术方案实现的:
一种处理IO请求的方法,应用于存储设备,包括:
接收读请求,确定所述读请求是否命中写缓存空间;其中,所述写缓存空间中的数据为处理写请求时写入的脏数据;
如果未命中所述写缓存空间,确定所述读请求中的逻辑地址对应的物理地址;
基于所述物理地址确定所述读请求是否命中读缓存空间;
如果未命中所述读缓存空间,基于所述物理地址从磁盘将所述读请求的待读取数据读取到所述读缓存空间,并返回所述待读取数据。
在所述处理IO请求的方法中,所述方法还包括:
如果命中所述写缓存空间,从所述写缓存空间获取所述待读取数据,并返回所述待读取数据。
在所述处理IO请求的方法中,所述方法还包括:
接收到写请求,将所述写请求中的待写入数据写入到写缓存空间;
返回写入成功信息,并更新预设的第一缓存表;
对所述待写入数据进行重删处理,若所述待写入数据在所述磁盘中没有相同的数据,将所述待写入数据写入所述磁盘;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州宏杉科技股份有限公司,未经杭州宏杉科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810101627.4/2.html,转载请声明来源钻瓜专利网。