CN104484242B - 一种写时拷贝快照备份过程中可断点传输的方法 - Google Patents
一种写时拷贝快照备份过程中可断点传输的方法 Download PDFInfo
- Publication number
- CN104484242B CN104484242B CN201410756310.6A CN201410756310A CN104484242B CN 104484242 B CN104484242 B CN 104484242B CN 201410756310 A CN201410756310 A CN 201410756310A CN 104484242 B CN104484242 B CN 104484242B
- Authority
- CN
- China
- Prior art keywords
- data block
- snapshot
- breakpoint
- label
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种写时拷贝快照备份过程中可断点传输的方法,该方法中,任一快照中的数据块均对应一个标记,具体包括以下步骤:1)源端获取需备份的快照名,从所对应的快照的根节点开始遍历,提取数据块;2)根据当前提取的数据块的标记,获取下一次要遍历的数据块的标记;3)对所提取的数据块进行封装,并传输给目的端;4)源端判断在设定时间内是否接收到目的端写入成功的消息,若是,则将已传输的数据块的标记保存到源端断点信息文件中,若否,则传输失败,返回步骤3)。与现有技术相比,本发明具有快照备份效率高、对存储资源要求低等优点。
Description
技术领域
本发明涉及计算机存储技术领域,尤其是涉及一种写时拷贝快照备份过程中可断点传输的方法。
背景技术
当前,随着信息化技术的不断发展,人们需要保存的资料、数据越来越多,数据对人们的工作,生活也越来越重要。数据的保存和数据的安全也显得越来越重要了。出现了各种各样的数据备份技术和产品。如针对前端主机的数据备份,将主机上的数据拷贝到其他的存储介质上进行保存,以便将来当原有数据丢失时,能够再找回来。基于存储后端的备份技术,有对存储卷或者文件系统做快照,创建克隆等本地的数据备份方式和将生成的快照备份到异地的存储介质上面的复制,异步远程镜像等技术。
在备份快照数据时,目的端将接收到的数据写入到文件系统中。但如果在传输过程中,出现网络断开或者断电等异常情况时,目的端的数据是不完整的,且无法定位具体数据传输的位置。源端、目的端都无法确定下次从哪个位置继续续传。如果出现异常后,往往需要重新开始传输,无法利用之前已传输的数据。
现有技术中是引入断点续传技术,将源端快照提取生成一个文件,再对该生成的文件进行切片,进行断点续传。但前提需要先生成一个文件。如果快照引用的数据很大,则在源端需要一个相当大的存储空间来保存该快照数据生成的数据文件。同时从快照中提取数据生成数据文件也需要耗费时间,增加整个快照的备份时间。
综上可知,采用传统的快照备份,断点续传技术备份的效率和对资源的利用率都有较大的改进和优化的空间。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种写时拷贝快照备份过程中可断点传输的方法,能够提高快照备份的效率和降低对存储资源的要求。
本发明的目的可以通过以下技术方案来实现:
一种写时拷贝快照备份过程中可断点传输的方法,该方法中,任一快照中的数据块均对应一个标记,具体包括以下步骤:
1)源端获取需备份的快照名,从所对应的快照的根节点开始遍历,提取数据块;
2)根据当前提取的数据块的标记,获取下一次要遍历的数据块的标记;
3)对所提取的数据块进行封装,并传输给目的端;
4)源端判断在设定时间内是否接收到目的端写入成功的消息,若是,则将已传输的数据块的标记保存到源端断点信息文件中,若否,则传输失败,返回步骤3)。
所述步骤3)中,对数据块进行封装时,在数据块上增加标记和数据校验和。
所述步骤3)中,目的端收到封装的数据块后,写入该数据块,具体为:
301)校验所接收到的数据块;
302)根据标记获取该数据块应写入的位置;
303)根据步骤302)获取的位置写入数据块,并判断写入是否成功,若是,则执行步骤304),若否,则向源端发送写入失败的消息;
304)根据写入成功的数据块的标记更新目的端断点信息文件,并向源端发送写入成功的消息。
还包括:
网络故障恢复后,读取源端断点信息文件或目的端断点信息文件的最新标记,根据所述标记定位所要读取的数据块,执行步骤2)-4)。
所述源端断点信息文件中,断点的粒度为数据块大小的整数倍。
所述目的端断点信息文件中,断点的粒度为数据块大小的整数倍。
所述目的端写入数据块时,采用覆盖写方式。
所述快照的数据块树形结构。
所述标记为一四元组,包括快照名、数据对象、数据块所在层和数据块块号。
所述数据块为一个数据块或多个连续数据块。
与现有技术相比,本发明具有以下优点:
(1)本发明设计了一种快照数据块定位的标记,在快照备份时,只需在源端和目的端各保存一个断点信息文件就可以实现快照的断点续传。不管是源端还是目的端断电,断开网络,在下次连接时,可以继续在原有已传输的数据基础上继续备份,节省备份的时间。
(2)本发明只需要保存一个标记就能直接定位到快照中的具体数据块,无需生成中间的数据文件,节省存储空间和中间文件生成的时间。
(3)本发明在数据块传输时,对数据块进行封装,包含详细的数据信息和效验和,保证数据的完整性和正确性。
(4)本发明采用扁平化的数据提取方式,相比传统的递归遍历,具有更好的提取效率。
附图说明
图1为本发明快照的树状结构示意图;
图2为本发明快照备份时,源端快照数据提取、发送的流程示意图;
图3为本发明快照备份时,目的端接收数据块,写入数据库的流程示意图;
图4为本发明断点续传时,源端数据提取、发送的流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本发明实施例提供一种写时拷贝快照备份过程中可断点传输的方法,主要针对的是通过快照备份的两个存储系统,所述快照为写时复制(拷贝)的快照,它引用的数据块为静止的,数据块不会随时间或者卷的读写发生变化,每次顺序遍历时,块提取的顺序和数据块的地址都不会发生任何变化。利用上述特征,本发明设计一种数据结构(标记)能够定位快照中的数据块,同时提供通过该标记提取和写入快照数据块的方法,并将该标记作为断点信息保存,以便网络断开再恢复时,能够在之前已传输的数据块基础上继续备份,以达到提供快照备份效率,降低备份快照对存储资源的要求。
如图1所示,文件系统中的快照等分为元数据、数据等,元数据、数据块都分层存放的,构成了一个倒立的树,快照根节点(root)为快照的超级块,下面的索引块(objoct)、元数据、数据块构成这个枝和叶。本发明所采用的标记为一个四元组:mark(objsetid,objectid,level,blkid),其中,通过objsetid能够定位到具体的快照,通过objectid定位到元数据中的数据对象,通过level定位数据块的层数,通过blkid定位具体的块号。上述四元组能准确描述存储系统中的一个具体的块,包括元数据和数据块,同时能计算该块后面的数据块的标记。该方式为扁平式的,相对于传统的从根节点递归的方式,提取中间的某块数据块时,不需要从根节点开始递归,大大节省定位到具体块的查找时间。
如图2所示,源端进行快照备份的数据流程为:
步骤s101,开始提取快照数据;
步骤s102,根据当前提取的数据块的标记,获取下一次要遍历的数据块的标记;
步骤s103,对所提取的数据块进行封装,在数据块上增加标记和数据校验码;
步骤s104,将封装后的数据块传输给目的端,源端判断在设定时间内是否接收到目的端写入成功的消息,若是,则执行步骤s105,若否,则传输失败,返回步骤s101;
步骤s105,将已传输的数据块的标记保存到源端断点信息文件中,更新断点信息,返回步骤s101。
如图3所示,目的端收到封装的数据块后,写入该数据块,具体为:
步骤s201,接收数据块;
步骤s202,校验所接收到的数据块;
步骤s203,根据标记获取该数据块应写入的位置;
步骤s204,根据步骤s203获取的位置写入数据块,并判断写入是否成功,若是,则执行步骤s205,若否,则向源端发送写入失败的消息;
步骤s205,根据写入成功的数据块的标记更新目的端断点信息文件,并向源端发送写入成功的消息。
在发生网络故障时,数据传输中断,网络故障恢复后,重新进行快照备份,具体为:
步骤s301,读取源端断点信息文件或目的端断点信息文件的最新标记;
步骤s302,根据标记打开快照;
步骤s303,定位所要读取的数据块;
步骤s304,执行步骤s102~s105。
在源端和目的端设计断点信息的保存文件,断点的粒度必须为文件系统数据块大小的整数倍,如文件系统的块大小为4K,则断点的最小单位可以为4K,可以根据网络速度设计断点续传时,需续传的数据大小(必须是块大小的整数倍)。对于目的端,同一个数据块,多次写入,写是覆盖写,多次重复写对数据的正确性和完整性都没有影响。
Claims (8)
1.一种写时拷贝快照备份过程中可断点传输的方法,其特征在于,该方法中,任一快照中的数据块均对应一个标记,所述标记为一四元组,包括快照名、数据对象、数据块所在层和数据块块号,具体包括以下步骤:
1)源端获取需备份的快照名,从所对应的快照的根节点开始遍历,提取数据块;
2)根据当前提取的数据块的标记,获取下一次要遍历的数据块的标记;
3)对所提取的数据块进行封装,并传输给目的端,对数据块进行封装时,在数据块上增加标记和数据校验和;
4)源端判断在设定时间内是否接收到目的端写入成功的消息,若是,则将已传输的数据块的标记保存到源端断点信息文件中,若否,则传输失败,返回步骤3)。
2.根据权利要求1所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,所述步骤3)中,目的端收到封装的数据块后,写入该数据块,具体为:
301)校验所接收到的数据块;
302)根据标记获取该数据块应写入的位置;
303)根据步骤302)获取的位置写入数据块,并判断写入是否成功,若是,则执行步骤304),若否,则向源端发送写入失败的消息;
304)根据写入成功的数据块的标记更新目的端断点信息文件,并向源端发送写入成功的消息。
3.根据权利要求1所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,还包括:
网络故障恢复后,读取源端断点信息文件或目的端断点信息文件的最新标记,根据所述标记定位所要读取的数据块,执行步骤2)-4)。
4.根据权利要求1所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,所述源端断点信息文件中,断点的粒度为数据块大小的整数倍。
5.根据权利要求2所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,所述目的端断点信息文件中,断点的粒度为数据块大小的整数倍。
6.根据权利要求2所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,所述目的端写入数据块时,采用覆盖写方式。
7.根据权利要求1-6任一所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,所述快照的数据块树形结构。
8.根据权利要求1-6任一所述的写时拷贝快照备份过程中可断点传输的方法,其特征在于,所述数据块为一个数据块或多个连续数据块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410756310.6A CN104484242B (zh) | 2014-12-10 | 2014-12-10 | 一种写时拷贝快照备份过程中可断点传输的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410756310.6A CN104484242B (zh) | 2014-12-10 | 2014-12-10 | 一种写时拷贝快照备份过程中可断点传输的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104484242A CN104484242A (zh) | 2015-04-01 |
CN104484242B true CN104484242B (zh) | 2018-06-22 |
Family
ID=52758786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410756310.6A Active CN104484242B (zh) | 2014-12-10 | 2014-12-10 | 一种写时拷贝快照备份过程中可断点传输的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104484242B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105138417B (zh) * | 2015-07-10 | 2018-07-20 | 上海爱数信息技术股份有限公司 | 一种基于zfs send的异步复制方法 |
CN105302665B (zh) * | 2015-10-12 | 2018-02-02 | 深圳市安云信息科技有限公司 | 一种改进的写时拷贝快照方法及系统 |
CN106815091B (zh) * | 2015-11-27 | 2020-02-14 | 成都华为技术有限公司 | 同步续传方法、从端设备及系统 |
CN107995277A (zh) * | 2017-11-28 | 2018-05-04 | 上海华测导航技术股份有限公司 | 一种基于gnss接收机数据断点续传的方法 |
CN109726181B (zh) * | 2018-12-28 | 2021-02-19 | 北京天融信网络安全技术有限公司 | 一种数据处理方法及数据处理装置 |
CN110633164B (zh) * | 2019-08-09 | 2023-05-16 | 锐捷网络股份有限公司 | 一种面向消息的中间件故障恢复方法及装置 |
CN115623016A (zh) * | 2022-09-20 | 2023-01-17 | 浪潮云信息技术股份公司 | 一种基于云存储技术的备份断点续传实现方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102055784A (zh) * | 2009-11-06 | 2011-05-11 | 北大方正集团有限公司 | 富客户端的文件断点续传方法及系统 |
CN102546108A (zh) * | 2011-12-28 | 2012-07-04 | 深圳市新为软件有限公司 | 一种通过树形结构对网络资源进行传输的方法和装置 |
CN102710758A (zh) * | 2012-05-22 | 2012-10-03 | 苏州云博信息技术有限公司 | 一种基于单片机系统的数据流断点续传方法 |
CN102761614A (zh) * | 2012-06-29 | 2012-10-31 | 浪潮(北京)电子信息产业有限公司 | 一种实现网络数据传输断点续传的方法及系统 |
CN102801754A (zh) * | 2011-05-24 | 2012-11-28 | 英业达集团(天津)电子技术有限公司 | 一种断点续传的方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7392319B2 (en) * | 2004-04-23 | 2008-06-24 | International Business Machines Corporation | Method and apparatus for failure resilient forwarding of data over a computer network |
-
2014
- 2014-12-10 CN CN201410756310.6A patent/CN104484242B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102055784A (zh) * | 2009-11-06 | 2011-05-11 | 北大方正集团有限公司 | 富客户端的文件断点续传方法及系统 |
CN102801754A (zh) * | 2011-05-24 | 2012-11-28 | 英业达集团(天津)电子技术有限公司 | 一种断点续传的方法及系统 |
CN102546108A (zh) * | 2011-12-28 | 2012-07-04 | 深圳市新为软件有限公司 | 一种通过树形结构对网络资源进行传输的方法和装置 |
CN102710758A (zh) * | 2012-05-22 | 2012-10-03 | 苏州云博信息技术有限公司 | 一种基于单片机系统的数据流断点续传方法 |
CN102761614A (zh) * | 2012-06-29 | 2012-10-31 | 浪潮(北京)电子信息产业有限公司 | 一种实现网络数据传输断点续传的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104484242A (zh) | 2015-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104484242B (zh) | 一种写时拷贝快照备份过程中可断点传输的方法 | |
CN101989929B (zh) | 容灾数据备份的方法及系统 | |
CN103116615B (zh) | 一种基于版本矢量的数据索引方法及服务器 | |
CN102981933B (zh) | 物联网感知层的数据增量备份方法及系统 | |
CN103118104B (zh) | 一种基于版本矢量的数据还原方法及服务器 | |
CN105955836A (zh) | 一种冷热备份自动演练多功能系统 | |
CN103197988A (zh) | 一种数据备份、恢复的方法、设备和数据库系统 | |
CN102368222A (zh) | 一种多副本存储系统在线修复的方法 | |
CN105681420A (zh) | 一种基于Docker实现交换机操作系统备份的方法 | |
WO2015067073A1 (zh) | 一种数据操作的方法和设备 | |
CN104461773A (zh) | 一种虚拟机备份去重的方法 | |
CN103530204A (zh) | 一种实时数据备份方法及系统 | |
CN109241004A (zh) | 元数据文件大小恢复方法、系统、装置及可读存储介质 | |
CN105376329A (zh) | 一种远程在线备份虚拟机的方法 | |
CN105337772A (zh) | 备份和恢复网络设备配置的系统及方法 | |
WO2015074260A1 (zh) | 数据同步方法和数据同步系统 | |
WO2016107219A1 (zh) | 数据恢复方法及装置 | |
CN103414769A (zh) | 虚拟机热迁移的方法及物理机 | |
CN103019847A (zh) | 对虚拟机数据进行迁移的方法及系统 | |
CN104699551B (zh) | 一种数据恢复方法及云端服务器 | |
CN103064766B (zh) | 一种持续数据保护技术中数据快速同步方法 | |
CN105159790B (zh) | 一种数据抢救方法及文件服务器 | |
CN103530205A (zh) | 多副本中故障副本的处理方法和装置 | |
CN105138417B (zh) | 一种基于zfs send的异步复制方法 | |
CN107888430B (zh) | 虚拟机管理操作同步方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 201112 Shanghai, Minhang District, United Airlines route 1188, building second layer A-1 unit 8 Applicant after: SHANGHAI EISOO INFORMATION TECHNOLOGY CO., LTD. Address before: 201112 Shanghai, Minhang District, United Airlines route 1188, building second layer A-1 unit 8 Applicant before: Shanghai Eisoo Software Co.,Ltd. |
|
COR | Change of bibliographic data | ||
GR01 | Patent grant | ||
GR01 | Patent grant |