发明名称 一种连续数据保护方法
摘要 本发明公开了一种连续数据保护方法,该方法综合考虑时间和空间代价,通过对所有前后两个版本的写操作数据块进行异或操作。根据读写的局部性原理,异或操作后的数据块其绝大部分数据位值为0。然后再采用压缩算法对该校验值进行压缩,可以极大地节省记录写操作日志的存储空间。其存储空间为原记录方式的1/20~1/30。另外在记录时定期引入快照机制,使得恢复时可先恢复到最近的快照点,然后再恢复到指定的时间点,这样可显著提高数据恢复的效率并解决异或效验数据链太长后可能产生的“污染”问题,提高恢复数据的可靠性。本发明实现了真正意义上数据块级别的连续数据保护,既具有块级高效率恢复的特点,还具有低存储空间开销、低系统性能影响的优点。
申请公布号 CN101430657B 申请公布日期 2011.10.26
申请号 CN200810197659.5 申请日期 2008.11.17
申请人 华中科技大学 发明人 谢长生;李旭;杨靖;曹强;谭志虎;万继光
分类号 G06F11/14(2006.01)I 主分类号 G06F11/14(2006.01)I
代理机构 华中科技大学专利中心 42201 代理人 曹葆青
主权项 1.一种连续数据保护方法,包括记录过程和恢复过程,记录过程包括步骤(A1)~(A10),恢复过程包括步骤(C1)~(C7);(A1)截获系统的读写命令,如果是写操作,转到步骤(A3),否则进入步骤(A2);(A2)对所有的读操作按原方式执行,转入(A10);(A3)设当前时间为T(m),m为系统内部时间,设此次写操作对象是数据块B,当前所写的内容为B<sub>T(m)</sub>,写操作要覆盖区域的内容为B<sub>T(m-1)</sub>;判断当前时间T(m)是否达到触发条件,达到转到步骤(A8),否则进入步骤(A4);(A4)读出要覆盖区域的内容B<sub>T(m-1)</sub>,计算异或校验值P<sub>T(m)</sub>,其中,<img file="FSB00000147061100011.GIF" wi="558" he="78" />(A5)对步骤(A4)中运算后的数据P<sub>T(m)</sub>加上时间戳T(m);(A6)将上一步得到的数据按时间戳顺序插入校验值日志链,转到步骤(A9);(A8)将原始写操作内容B<sub>T(m)</sub>加上时间戳T(m),再插入快照日志链或所述校验值日志链;(A9)进行正常的写操作;(A10)如果系统还有读写操作,转入步骤(A1),否则结束记录过程;(C1)输入恢复时间点T(r),其中,r为输入的系统内部时间;(C2)判断输入时间点T(r)有无快照点,如果有快照,设该快照点的时间为T(k),则k=r,k为该快照点的系统内部时间,进入步骤(C3),否则转到步骤(C4);(C3)找到相应的快照时间点T(k)的数据B(k),用B(k)恢复到时间点T(r),转到步骤(C7);(C4)根据r到最近两个快照点时间跨度长短,确定离恢复时间点最近 的快照点B<sub>T(k)</sub>,当k<r时,即相应快照时间点早于恢复时间点,转到步骤(C6),当k>r时,即相应快照时间点晚于恢复时间点时,进入步骤(C5);(C5)首先恢复到步骤(C4)中所得到的快照点B<sub>T(k)</sub>,再利用公式(I)进行正向恢复,最终恢复到用户指定时间点T(r)时的数据块B<sub>T(r)</sub>,然后转到步骤(C7);<img file="FSB00000147061100021.GIF" wi="1269" he="66" />(C6)首先恢复到步骤(C4)中所得到的快照点B<sub>T(k)</sub>,再利用公式(II)进行反向恢复,最终恢复到用户指定时间点T(r)时的数据块B<sub>T(r)</sub>,然后转到步骤(C7);<img file="FSB00000147061100022.GIF" wi="1286" he="84" />(C7)恢复过程完成。
地址 430074 湖北省武汉市洪山区珞喻路1037号