[发明专利]采用位映像表算法处理存储设备快照的方法无效
申请号: | 200610079007.2 | 申请日: | 2006-04-28 |
公开(公告)号: | CN101063951A | 公开(公告)日: | 2007-10-31 |
发明(设计)人: | 郭建锋;陈玄同;刘文涵 | 申请(专利权)人: | 英业达股份有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 北京律诚同业知识产权代理有限公司 | 代理人: | 梁挥;徐金国 |
地址: | 中国台*** | 国省代码: | 中国台湾;71 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 采用 映像 算法 处理 存储 设备 快照 方法 | ||
技术领域
本发明涉及一种存储设备的快照处理方法,特别是涉及一种采用位映像表算法处理存储设备快照的方法。
背景技术
为满足当前人们存储大量数据的需要,存储设备的数据容量越来越大,而且对数据安全的要求也越来越高。针对在某一时刻在线备份大量数据或在线保护数据的需要,出现了设备快照的技术。快照技术为一种针对包括硬盘、逻辑磁盘等区块设备的备份方式,创建快照的设备称作原区域设备,创建出的快照是与原区块设备相关联的区块设备,称作快照设备。原区块设备可以有多个快照设备,每个快照设备都记录在原区块设备的结构中。原区块设备和快照设备的描述结构都保存在系统随机存取内存(Random-access memory,简称RAM)中,快照设备本身也需要使用一定的实体存储空间。
一般创建快照时需要指定原区块设备、快照实际容量大小以及快照设备本身使用的存储设备,快照设备的逻辑存储容量为原区块设备的大小。快照设备上存储数据并划分空间的最小单位为数据块,一般大小为64k。创建快照设备时需计算出所有可以用来存储原区块设备上数据的数据块数,并使用以下结构描述每个数据块:[原区块设备(org_dev),原区块设备的偏移位置(org_offset),快照设备(snap_dev),快照的偏移位置(snap_offset)],我们称为数据块描述chunk_des。快照设备已经使用的数据块个数标记为当前数据块数cur_chunk,所有的数据块个数标记为总数据块数total_chunk,并标记快照设备关于所有数据块的描述表为chunk_table。
在写入数据至原区块设备时,需要判断原区块设备上数据是否应该先读出并写入至快照设备中,并在所有快照设备处理完成之后,才将数据写入原区块设备,进而通过此种方式可以将快照创建前原区块设备上的数据保留在快照设备中。
对于上述原区块设备上数据是否应该先读出并写入至快照设备中的判断,目前现有技术一般采用以下方式:
1、为了便于查询,每个数据块的描述修改为:[链表指针,chunk_des],称为数据块描述修改chunk_des_new。
2、创建快照设备时计算出可用于保存原区块设备上数据的数据块个数,创建出数据块描述表chunk_table,初始化chunk_des,将每个chunk_des_new中的链表指针赋值为空。
3、采用哈希(hash)算法,将所有快照上已经保存有原区块设备上数据的chunk_des_new加入哈希表中。
4、写入数据至原区块设备时,从哈希表中查找是否原区块设备上此位置的数据已经写入快照设备上(通过在哈希表中查找chunk_table中是否有原区块设备对应的org_dev和org_offset的chunk_des_new存在而实现);如果已经写入,则不用从原区块设备上读出对应位置的数据写入至快照设备上;否则需要从原区块设备上读出对应位置的数据写入快照设备上,并将快照设备当前的chunk_des写入快照设备相应位置;最后将chunk_des_new加入到哈希表中并将快照设备当前的数据块使用数加1。
因此现有技术的主要缺点如下:
1、每个chunk_des_new结构需要至少16个字节,这样对一个稍大规模的快照设备需要消耗的系统RAM过多,如果快照可以自动扩容,具有较大容量的快照设备中用以描述数据块的chunk_table很大,进而占用的RAM将会很大。
2、对于较大的快照设备,需要的chunk_des_new的个数较多,对其按照哈希算法的查找效率并不高,即每次查找原区块设备的数据是否存在于快照的chunk_table中时会耗费较多时间,进而查找速度比较慢,效率不高。
3、由于RAM的限制,快照设备的个数不能太多,并且每个快照设备的规模不能太大。
4、此外,因以上限制,数据块大小不能太小,进而导致每次写入数据至原区块设备时,需要从原区块设备上读出数据块大小的数据写入到快照设备上,这样降低了快照设备的有效使用率。
发明内容
本发明所要解决的问题与缺陷在于,提供一种采用位映像表算法处理存储设备快照的方法,通过一个多级动态位映像(bitmap)表算法处理一个原区块设备与一个快照设备之间数据的对应关系。
本发明所提供的一种采用位映像表算法处理存储设备快照的方法,包括以下步骤:
a)创建快照设备,并从操作系统获取系统页的大小作为快照设备存储数据并划分空间的最小单位的数据区块大小;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英业达股份有限公司,未经英业达股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610079007.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电机内置式节能循环净水泵
- 下一篇:脊椎骨支持装置