[发明专利]一种flashcache混合存储系统的缓存读写操作方法及系统在审
申请号: | 201610262692.6 | 申请日: | 2016-04-25 |
公开(公告)号: | CN107305477A | 公开(公告)日: | 2017-10-31 |
发明(设计)人: | 吴方鸣;陈岚;郝晓冉 | 申请(专利权)人: | 中国科学院微电子研究所 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 党丽,王宝筠 |
地址: | 100029 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 flashcache 混合 存储系统 缓存 读写 操作方法 系统 | ||
技术领域
本发明涉及存储系统领域,特别涉及一种flashcache混合存储系统的缓存读写操作方法及系统。
背景技术
随着互联网行业的迅速发展,云计算、大数据等技术的兴起让存储系统的处理速度变得越来越重要。机械硬盘(Hard Disk Drive,HDD)是目前大容量存储的主要方式,其容量可以不断的增大,但处理速度却难以增长,这成为制约存储系统速度提高的重要因素。固态硬盘(Solid State Drives,SSD)由固态电子存储芯片阵列而制成,非常适合处理大量的读写访问,但其价格昂贵,寿命有限,因此,基于机械硬盘和固态硬盘这两种存储介质的数据混合存储方案应运而生。
目前,一种主存-固态硬盘-机械硬盘的混合存储结构为其中一种混合存储方案的应用,该混合存储结构中,固态硬盘作为机械硬盘的缓存,flashcache混合存储系统便是这种混合存储结构,flashcache是基于Linux设备映射层框架之上的内核模块,用于接受来自上层下发的读写操作(I/O)请求,并根据请求将热数据调度到固态硬盘作为缓存,进而实现机械硬盘的读写。
在flashcache混合存储系统中,在进行缓存的读写操作的方法中,在接收到上层的读写操作请求后,先进行自旋锁的操作,当返回可操作的访问值之后,才可以进行相应的读写操作,该自旋锁为整个缓存共用,这样,每次只能有一个读写操作请求可以执行对缓存的操作,相当于缓存进行的是串行化操作,缓存的读写效率低。
发明内容
有鉴于此,本发明的目的在于提供一种flashcache混合存储系统的缓存读 写操作方法及系统,实现读写并行操作,提高缓存的读写效率。
为实现上述目的,本发明有如下技术方案:
一种flashcache混合存储系统的缓存读写操作方法,缓存中与每个缓存块对应的元数据结构中设置有读写锁,所述方法包括:
判断操作请求为读操作或写操作;
若为读操作,则向操作请求指向的缓存块所对应的元数据结构请求读者锁并进行读操作,在读者锁加锁状态,拒绝对该缓存块的写操作;
若为写操作,则向操作请求指向的缓存块所对应的元数据结构请求写者锁并进行写操作,在写者锁加锁状态,拒绝对该缓存块的读操作和其他写操作。
可选的,还包括:建立线程池,线程池中包括多条处于等待状态的线程;则
在进行读操作或写操作时,使用线程池中的空闲线程执行操作任务。
可选的,还包括:
接收卸载请求后,将终止请求发送至线程池,线程池处理完所有线程后,销毁线程池。
可选的,缓存中还设置有自旋锁,还包括:
判断操作请求是否为更新元数据结构中的成员变量,若是,则请求自旋锁并进行元数据结构中的成员变量的更新操作,在自旋锁加锁状态,缓存拒绝任何其他的操作。
此外,本发明还提供一种flashcache混合存储系统的缓存读写操作系统,其特征在于,缓存中与每个缓存块对应的元数据结构中设置有读写锁,所述系统包括:
判断单元,用于判断操作请求为读操作或写操作;
读操作单元,用于在操作请求为读操作时,向操作请求指向的缓存块所对应的元数据结构请求读者锁并进行读操作,在读者锁加锁状态,拒绝对该缓存块的写操作;
写操作单元,用于在操作请求为写操作时,向操作请求指向的缓存块所对应的元数据结构请求写者锁并进行写操作,在写者锁加锁状态,拒绝对该缓存块的读操作和其他写操作。
可选的,还包括:
线程池建立单元,用于建立线程池,线程池中包括多条处于等待状态的线程;则,
在读操作单元和写操作单元中,在进行读操作或写操作时,使用线程池中的空闲线程执行操作任务。
可选的,还包括:
线程池销毁单元,用于在接收卸载请求后,将终止请求发送至线程池,线程池处理完所有线程后,销毁线程池。
可选的,缓存中还设置有自旋锁,判断单元还用于判断操作请求是否为更新元数据结构中的成员变量;
所述系统还包括更新单元,用于操作请求为更新元数据结构中的成员变量时,请求自旋锁并进行元数据结构中的成员变量的更新操作,在自旋锁加锁状态,缓存拒绝任何其他的操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院微电子研究所,未经中国科学院微电子研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610262692.6/2.html,转载请声明来源钻瓜专利网。