[发明专利]磁盘阵列缓存的实现方法无效
申请号: | 201310269415.4 | 申请日: | 2013-06-28 |
公开(公告)号: | CN103309820A | 公开(公告)日: | 2013-09-18 |
发明(设计)人: | 袁清波;张建斌;边国伟;苗艳超;刘新春;邵宗有 | 申请(专利权)人: | 曙光信息产业(北京)有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京德恒律治知识产权代理有限公司 11409 | 代理人: | 章社杲;孙征 |
地址: | 100193 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 磁盘阵列 缓存 实现 方法 | ||
技术领域
本发明一般地涉及计算机技术领域,更具体地来说,涉及一种磁盘阵列缓存的实现方法。
背景技术
Cache(即,缓存)存在于计算机内部的高速部件和低速部件之间,成为弥补速度差距的重要手段。将Cache技术引入存储系统,用以减少存储访问请求的等待时间,从而加快存储访问速度。从一定程度上弥补了存储设备I/O处理速度和CPU处理速度的差距。
在现有技术中,在Linux系统上对磁盘数据的操作分为两类:Direct IO和Buffered IO,前者是一种不用内核缓存的IO,它可以做到直接将用户空间的内存写入磁盘或者将磁盘数据直接读到用户空间的缓存区,这种策略就是不用内核的缓存而使用用户自己设计的缓存,这通常用于数据库系统中;后者则是使用最多的一种,用户对磁盘数据的访问都必须先经过内核的缓存,读数据时如果数据在内核中有缓存则直接从内核内存中读出即可,速度远超过从慢速的磁盘上读取,而写数据时也是先在内核中分配一段内存空间,然后将数据写入此空间,以后在合适的时间再写入到磁盘中去。这两种缓存在一定程度上提高了对磁盘数据的读写操作速度。
然而,用户希望写入磁盘的数据实际上并未真正的写入到磁盘中,而只是在内核空间中暂存,所以在系统崩溃的时候暂存在内存中的磁盘数据会全部丢失,不但给用户带来不必要的损失,还浪费了大量的工作时间,降低了工作效率。因此,需要一种能够在性能和数据安全性方面都符合要求的缓存。
发明内容
针对现有技术中在系统崩溃的时候暂存在内存中的磁盘数据会全部丢失等的缺陷,本发明提出了能够解决上述缺陷的磁盘阵列缓存的实现方法。
本发明提供了一种磁盘阵列缓存的实现方法,包括以下步骤:从待处理队列中获取数据请求;根据数据请求在缓存树中进行相应的读数据操作或写数据操作;以及将缓存树中的数据写入底层磁盘阵列中。
优选地,当数据请求为写数据请求时,根据写数据请求将数据写入缓存树的写空闲页中并且将写空闲页的标记设置为脏页。
优选地,当数据请求为读数据请求时,根据读数据请求在缓存树的所有页面中查找需要读取的数据。
优选地,当在缓存树的页面中查找到需要读取的数据时,读取需要读取的数据并将需要读取的数据提供给用户。
优选地,当在缓存树的所有页面中都没有查找到需要读取的数据时,访问底层磁盘阵列并在底层磁盘阵列中查找到需要读取的数据;以及将查找到的需要读取的数据复制到缓存树的空闲页中并将空闲页的标志设置为有效,同时将需要读取的数据提供给用户。
优选地,当缓存树中的脏页的数量与缓存树的页面的总数量的比率为80%时,将缓存树中的脏数据写入底层磁盘阵列中并相应地将脏页的标志设置为有效。
优选地,定时地或者在系统空闲时,将缓存树中的脏数据写入底层磁盘阵列中并相应地将脏页的标志设置为有效。
优选地,当缓存树中的读空闲页不足时,根据最近最少使用替换算法释放缓存树中的访问次数最少的读页的存储空间并且将读页的标志设置为空闲页。
优选地,当缓存树中的写空闲页不足时,根据最近最少使用替换算法将所述缓存树中访问次数最少的脏页的脏数据写入底层磁盘阵列中并且释放所述脏页的存储空间,同时将脏页的标志设置为空闲页。
优选地,当接收到用户的数据请求时,将数据请求添加至待处理队列中。
本发明的磁盘阵列缓存的实现方法克服了现有技术的缺陷,在缓存中进行读写操作,从而大幅提高了读写操作速率。此外,系统能够将存储在缓存中的数据及时地写入底层磁盘阵列中,所以即使在系统崩溃时,暂存在缓存中的数据已经写入底层磁盘阵列中,因而不会造成数据的完全丢失。因此,不需要重复进行读写操作,大幅减少了工作时间,相应地提高了用户的工作效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。在附图中:
图1为总体缓存结构的示意图;
图2为根据本发明的实施例的磁盘阵列缓存的实现方法的总体流程图;以及
图3为根据本发明的实施例的磁盘阵列缓存的实现方法中的读数据操作的具体流程图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业(北京)有限公司,未经曙光信息产业(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310269415.4/2.html,转载请声明来源钻瓜专利网。