[发明专利]一种CDP中的块级数据捕获方法在审
申请号: | 201310066765.0 | 申请日: | 2013-03-04 |
公开(公告)号: | CN103150268A | 公开(公告)日: | 2013-06-12 |
发明(设计)人: | 张砚波;王东风 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 cdp 中的 级数 捕获 方法 | ||
技术领域
本发明涉及一种计算机应用技术领域,尤其涉及一种CDP中的块级数据捕获方法。通过将数据捕获和数据传输相互分离的方法以及采用内核态缓存和用户态缓存的两级缓存的传输策略,可以提高用户的读写性能,降低存储设备的开销,保证数据的可靠性以及降低内存资源的使用,为CDP数据保护技术提供了一种很好的捕获数据的方法。
背景技术
在现阶段的容灾备份领域,CDP技术是数据保护的一个重要方法,CDP可以通过增量的方式实现数据保护,它的实现主要是通过捕获或跟踪数据的变化,同时将这些变化的数据放在独立于生产数据之外的地方,这样可以确保用户的数据恢复到过去的任意时间点。本发明针对CDP保护中块级数据的捕获问题存在的问题进行分析研究 ,如何提高数据捕获的效率成为本发明的切入点和实现点。
在现阶段,针对CDP块级数据保护的数据捕获策略的实现过程中主要存在如下缺点:
1、传统CDP实现数据的远程容灾 方案需要通过iSCSI协议来实现,这种方式的缺点是需要在客户节点实现对远程CDP备份空间的管理,有一定复杂性;同时,他们采用的远程数据传输和数据捕获是同步执行的,这就牵扯到数据的传输效率和性能问题,这种方式中的块级数据远程传输过程会影响存储系统的性能;
2、传统的CDP数据捕获和传输都在内核缓存空间内完成,由于用户的网络和存储设备的情况都千变万化的,这就会导致数据远程传输会极大地影响内核的性能,同时内核缓存空间中有限的地址空间是会限制缓存的大小,所以在高负荷I/O时会出现缓存不够,导致系统内核崩溃的情况。
发明内容
本发明的目的是提供一种CDP中的块级数据捕获方法。
本发明的目的是按以下方式实现的,在内核缓存空间和用户缓存空间分别采用内核空间缓存模块和用户空间缓存模块,在用户空间缓存模块中又设置了静态缓存和动态缓存两种级别的缓存机制,以及使用不同的缓存模块进行数据处理的两级缓存的结构,在用户空间缓存模块采用动态缓存,在保证数据可靠性的前提下减少内存资源的使用,提高了数据捕获的性能和效率,提高了缓存的利用率,通过将数据捕获和数据传输相互分离以及采用内核空间缓存模块和用户空间缓存模块的两级缓存方法,提高用户的读写性能,降低存储设备的开销,保证容灾方案的高效能和稳定性。数据捕获步骤如下:
(1)用户触发写操作,由通用块层传送给本专利中虚拟出来的I/O捕获标记模块,这个I/O捕获标记模块通过修改这个数据块的成员属性,将这个模块的处理请求重定向给能处理该请求的设备;
(2)重定向写操作,在I/O捕获标记模块定义了一个回调函数,它对上层传下来的写操作修改处理的设备的属性后,将请求重定向到真实的物理设备,重新提交给通用块设备层来处理;
(3)重定向写操作,写操作被通用块设备层重定向给修改处理设备属性值的的物理设备所对应的驱动程序进行处理;
(4)重定向后的磁盘驱动程序完成写磁盘操作;
(5)重定向后的磁盘驱动程序向上层返回I/O成功与否 的标志信息;
(6)如果步骤(5)报告成功,则将写操作的数据块进行捕获,并加上元数据进行数据块的组合;
(7)将组合后的数据块传输到远程服务器进行保存,用于以后数据的恢复,失败则跳过。
在缓存系统中,静态缓存是在任务创建时分配的存储空间,静态缓存采用SSD硬盘作为缓存介质,缓存是保证任务正常运行的必选缓存,大小由用户根据自己的业务情况进行选定和设置大小,动态缓存是在大量数据突发写或者网络速度降低导致静态缓存不够用时由系统动态分配的,而当系统空闲时,系统的管理模块会自动回收未使用的动态缓存,在满足系统需要的前提下节省内存资源。内核空间缓存模块类似于寄存器,用以暂存捕获模块捕获的数据,等待转发到用户缓存中,转发后才会释放这部分缓存空间,再接受新的捕获的数据。
通过系统内核管理模块在通用块设备层之下进行数据的捕获,对每一个系统的写操作请求进行处理,这个模块是一个虚拟设备,能够将I/O请求做捕获处理,处理包括对捕获的数据打下时间戳标记,记录下那些操作的地址和写操作的大小等元数据信息,然后将这些信息进行保存更新,然后再重定向到实际存储设备完成实际的I/O操作,这个模块相当于对所有的数据块进行一个处理设备的指定,以此降低了通用块设备层的处理繁忙性,即在通用块设备层和物理设备的驱动程序中添加了一个虚拟设备的中间件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310066765.0/2.html,转载请声明来源钻瓜专利网。