[发明专利]一种缩短写时拷贝快照写响应时间的方法无效
申请号: | 200710053650.2 | 申请日: | 2007-10-19 |
公开(公告)号: | CN101140542A | 公开(公告)日: | 2008-03-12 |
发明(设计)人: | 冯丹;王志坤;周可;汪芳;田磊;曾令仿;庞丽萍 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F12/06 | 分类号: | G06F12/06;G06F11/14;G06F17/30 |
代理公司: | 华中科技大学专利中心 | 代理人: | 方放 |
地址: | 430074湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 缩短 拷贝 快照 响应 时间 方法 | ||
技术领域
本发明属于计算机存储技术领域,具体涉及一种缩短写时拷贝快照写响应时间的方法。
背景技术
磁盘阵列(RAID,Redundant Array of Independent Disks)技术已广泛地应用于数据存储中,其中RAID1、RAID5和RAID6等级别可在单个或两个磁盘发生故障时为数据提供保护,但是在实际应用中由于软件错误、人为失误、病毒攻击等软故障造成数据丢失和损坏的频率要远高于物理故障,当前的磁盘阵列对这种软故障导致的数据丢失,不能提供保护。传统的数据保护方法主要采用周期性的备份,但存在备份窗口大、恢复时间长、影响前端正常业务等弊端。快照(Snapshot)技术是一种有效地在线备份方法,它创建了数据在某时刻的一个瞬时映像,当数据发生错误需要恢复时,即可恢复到创建快照时间点的状态。在磁盘阵列中采用快照技术可以将软、硬件保护方法结合起来,进一步提高数据的可靠性和可用性。
快照技术按实现方法划分,主要有三种方式:分离镜像(Split Mirror)、写时拷贝(Copy-On-Write)和写重定向(Redirect-On-Write)。其中写时拷贝方法因其占用空间小,创建快照时间短等优点,广泛地应用在各种快照系统中。写时拷贝快照技术,在创建快照时,无需保存任何数据,创建过程瞬间即可完成,由于其只保存要更改的数据块,这种基于数据块改变的增量方式最大限度地减少了对存储容量的消耗。基于写时拷贝方法的快照系统,每次创建快照后,主机发送的写请求若是第一次修改源数据区中的数据,一般要分解为以下三个步骤:(1)从源数据区中读出需要快照保存的数据;(2)将此快照数据写入快照区;(3)将主机发送的新数据写入源数据区相应位置。以往的写时拷贝快照方法都是将这三个步骤串行执行,即主机写请求数据的写入需等待快照数据保存至快照区,从而对主机写请求带来较大延迟。
发明内容
本发明提出一种缩短写时拷贝快照写响应时间的方法,目的是将写时拷贝快照操作串行执行的三个步骤中第二个步骤延迟执行,从而缩短快照时主机写请求响应时间,提高存储系统的可用性。
本发明的一种缩短写时拷贝快照写响应时间的方法,预先将存储系统整个存储空间分为源数据区和快照区,源数据区存放主机访问请求的数据,快照区存放需快照保存的数据;设定快照块大小,构造快照链表头和快照索引结构根节点,快照链表保存所有快照元数据,快照索引结构用于判断相应数据块是否已保存在快照区;当接收到主机发送过来的写请求时,顺序进行下述步骤:
(1)根据设定的快照块大小,将写请求数据依据其起始地址和长度进行分块;
(2)以每个分块号为关键字在快照索引结构中进行查找,若已存在,转步骤(8),否则顺序进行;
(3)判断快照区是否有足够的剩余空间,是则转步骤(5),否则顺序进行;
(4)自动删除快照区中存在时间最久的一个快照,并更新快照区大小,转步骤(3);
(5)启动快照数据读进程,将需快照保存的数据块从源数据区中读出,并加入到快照数据写入队列尾;
(6)更新快照区内可用快照区大小和下一个可用扇区的位置;
(7)判断所有分块是否都已处理完毕,是则顺序执行,否则转步骤(2);
(8)将主机发送的写请求数据写入源数据区;
(9)判断是否满足预先设定的快照数据写进程启动条件,是则启动快照数据写进程,将快照数据写入队列中的数据写至快照区,否则顺序执行;
(10)结束。
所述的一种缩短写时拷贝快照写响应时间的方法,其特征在于:所述快照数据读进程,包括下述步骤:
(1)构造快照数据读命令,将需快照保存的数据块从源数据区读出,并设置该数据块要写入的快照区的扇区号;
(2)将读出的数据块加入到快照数据写入队列尾,并将快照数据写入队列的成员个数加1;
(3)构造快照元数据,将其加入到当前快照链表尾,并在快照索引结构中增加一个新节点,快照元数据用于在源数据区和快照区之间建立对应关系;
(4)休眠。
所述的一种缩短写时拷贝快照写响应时间的方法,其特征在于:所述快照数据写进程,包括下述步骤:
(1)判断快照数据写入队列是否为空,是则转步骤(4),否则顺序执行;
(2)从快照数据写入队列的头部取出一个快照数据块,构造写命令将该快照数据块写至快照区;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710053650.2/2.html,转载请声明来源钻瓜专利网。