CN101295276A - 一种磁盘级数据备份系统和方法 - Google Patents

一种磁盘级数据备份系统和方法 Download PDF

Info

Publication number
CN101295276A
CN101295276A CNA2008101153297A CN200810115329A CN101295276A CN 101295276 A CN101295276 A CN 101295276A CN A2008101153297 A CNA2008101153297 A CN A2008101153297A CN 200810115329 A CN200810115329 A CN 200810115329A CN 101295276 A CN101295276 A CN 101295276A
Authority
CN
China
Prior art keywords
backup
disk
write operation
data
read
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.)
Granted
Application number
CNA2008101153297A
Other languages
English (en)
Other versions
CN101295276B (zh
Inventor
王树鹏
云晓春
崔祥
吴志刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN2008101153297A priority Critical patent/CN101295276B/zh
Publication of CN101295276A publication Critical patent/CN101295276A/zh
Application granted granted Critical
Publication of CN101295276B publication Critical patent/CN101295276B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种磁盘级数据备份系统和其运行方法,该系统包括备份控制装置、写前读装置、备份读装置、磁盘过滤驱动装置、换页装置、备份快照表、内存缓存队列和硬盘缓存文件。系统首选获取用于记录磁盘扇区数据是否需要备份的备份快照表;根据获取的备份快照表从磁盘上依次读取需要备份的磁盘扇区数据进行备份,同时开始监控磁盘操作;监控并截获写磁盘操作;如果在备份期间截获到写操作信号,从被写磁盘读取并存储数据至内存缓存队列,当内存缓存队列的数据超过预定长度时,将数据移出到硬盘缓存文件,发送写操作放行信号,完成写前读操作。本发明能够在上层业务不中断的情况下保证备份数据时间一致,避免死锁;且具有较高业务应用无关性。

Description

一种磁盘级数据备份系统和方法
技术领域
本发明涉及信息安全技术领域,特别涉及一种容灾数据备份方法,更具体地,涉及一种可保证备份点状态一致性的磁盘级数据备份系统和方法。
背景技术
随着计算机技术的不断发展和信息化程度的不断提高,人们对信息的依赖程度越来越高。信息在IT环境中的高度集中存储,在很大程度上提高了信息和数据管理的自动化,提高了运营效率,降低了运营成本。但同时,风险性也在不断增加,灾难发生所造成的数据丢失,可能会导致巨大的损失。
为了避免灾难带来的不利影响,就需要对数据进行定时或者实时的备份。随着信息化程度的不断提高,信息化规模的不断扩大,需要备份的数据量就越来越大,并且数据之间存在很大的时间点相关性,如果一个时间点备份的数据存在状态不一致的情况,就会导致备份数据的不可用,使备份失去了应有的作用;另外,随着信息化系统业务应用的不断繁忙,重要性越来越大,业务应用可以停止的时间越来越短,而在短时间内完成数据量不断增减的数据备份变得越来越不可能,特别是很多业务应用是24×7持续运行的,是无法停止的。因此,数据备份系统就需要能够保证在业务应用不中断的情况下备份数据的时间点一致性,该问题是实现关键信息业务系统数据备份的关键问题。
目前存在以下保证计算机系统的数据信息备份时时间点一致性的方法:
(1)备份时锁定文件:通过拒绝进程的写访问防止别的用户修改该文件。如果别的进程已获得写访问权限,备份进程必须跳过该文件或等到获得独占的写权限时再操作该文件;
(2)检测文件的改变:在复制文件之后,备用进程可以利用操作系统检查复制操作期间是否进行过修改,如果进行过修改,必须重做复制或者跳过该文件;
(3)申请号为PCT/GB94/01581的PCT申请提出了一种运行具有一个在几个应用中共享的存储设备的计算机的方法,该方法使用一个辅助存储区来保存备份过程中写进程所写的数据,以避免写操作改写原始数据,备份进程可以从原始存储区读取数据,而其它读进程可以从辅助存取区读取数据;
(4)申请号为PCT/GB96/00651的PCT申请是对上面(3)中所述方法的改进,基本思路类似。
在上述(1)和(2)两种方法中,在进行数据备份时都要求有效的把其它应用程序锁定,因此这两种方法在备份期间无法支持业务应用的不中断执行。随着数据量的增加,数据复制所需要的时间也越来越长,而业务数据处于不断的使用之中,是无法终止的。所以,这两种方法无法满足当前的关键信息业务系统的灾备需求。上述(3)和(4)两种方法是针对文件系统层次的数据备份提出的,和上层业务应用是相关的,不适用块设备层次的数据备份,应用范围有限;另外,使用这两种方法还需要额外的存储装置实现备份进程和应用进程对数据的同时防范;最后,这两个专利提出的方法只适用于Dos、Novell NetWare、OS/2或Unix以及采用6800及PowerPC系列的CPU的Macintosh计算机上实现,并不适用现有的windows系列的操作系统。
发明内容
为解决上层业务不可停止和需要保证备份数据时间点一致性的矛盾,本发明提供一种在数据备份的过程中,保证其它业务应用的持续正常执行的同时,实现在线备份期间备份数据的时间一致性的磁盘级数据备份系统和方法。
根据本发明的一个方面,提供了一种磁盘级数据备份系统,包括下列装置:
备份控制装置、写前读装置、备份读装置、磁盘过滤驱动装置、换页装置、备份快照表、内存缓存队列和硬盘缓存文件;
其中,所述备份快照表用于记录磁盘扇区数据是否需要备份;
所述备份控制装置用于控制所述备份读装置和所述写前读装置的启动和终止;
所述备份读装置用于根据所述备份快照表读取需要备份的磁盘扇区数据进行备份;
所述磁盘过滤驱动装置用于监控并截获磁盘写操作,向所述写前读装置发送磁盘写操作信号;
所述写前读装置用于在备份过程中接收所述磁盘过滤驱动装置发送的磁盘写操作信号并向所述磁盘过滤驱动装置发送写操作放行信号;所述写前读装置根据磁盘写操作信号和备份快照表读取目标扇区数据进行备份,并将所述目标扇区数据放入内存缓存队列中;
所述换页装置用于定时检查内存缓存队列,内存缓存队列的数据超过预定长度时,将数据移出到硬盘缓存文件。
其中,所述系统还包括监控快照表,所述监控快照表用来记录增量监控期间被更改的磁盘扇区数据,标记磁盘写操作的目标扇区,用做增量备份的依据;当所述磁盘过滤驱动装置截获到磁盘写操作后,在所述监控快照表中记录所述磁盘写操作的目标磁盘扇区信息。
其中,所述写前读装置接收到所述磁盘写操作信号后,根据备份快照表,完成读取目标扇区数据后,向所述磁盘过滤驱动装置发送写操作放行信号。
其中,所述磁盘过滤驱动装置截获并辨别对磁盘的读写操作;其中,所述磁盘过滤驱动装置获取上层应用层对所述磁盘的读写操作。
其中,所述系统进行全量备份和增量备份;在全量备份时,所述备份读装置根据备份磁盘的使用状况备份使用扇区的数据;在增量备份时,所述备份读装置从所述磁盘过滤驱动装置获取进行数据备份使用的备份快照表,备份自上次增量备份后更改过的磁盘扇区数据。
其中,优选的,所述监控快照表存放在内核态。
其中,优选的,所述备份快照表存放在用户态。
其中,所述备份快照表记录备份分区中每一个磁盘扇区簇是否需要备份。
其中,所述监控快照表记录备份分区中每一个磁盘扇区簇的数据在增量监控期间是否被更改过。
其中,所述磁盘过滤驱动装置包括四种状态:空闲状态,阻塞状态,写前读监控状态和完全监控状态;所述磁盘过滤驱动装置处于空闲状态时,对磁盘读写操作进行简单的转发;所述磁盘过滤驱动装置处于阻塞状态时,转发磁盘的读操作,阻塞磁盘写操作;当开始进行全量/增量备份时,所述磁盘过滤驱动装置进入写前读监控状态,向所述写前读装置发送截获到的写操作信号;当全量/增量备份操作完成后,所述磁盘过滤驱动装置进入完全监控状态,直接放行截获到的磁盘写操作。
根据本发明的另一方面,提供了一种磁盘级数据备份方法,包括:
步骤10)、获取用于记录磁盘扇区数据是否需要备份的备份快照表;
步骤20)、根据所述获取的备份快照表从磁盘上依次读取需要备份的磁盘扇区数据进行备份,同时开始监控磁盘操作;
步骤30)、监控写磁盘操作,截获写磁盘操作;
步骤40)、如果在备份期间截获到写操作信号,从所述被写磁盘读取并存储数据至内存缓存队列,当内存缓存队列的数据超过预定长度时,将数据移出到硬盘缓存文件,发送写操作放行信号,完成写前读操作。
其中,步骤30)进一步包括:
步骤31)、截获到磁盘写操作后,将写操作的目标扇区标记在监控快照表中,其中,所述监控快照表用来记录增量监控期间被更改的磁盘扇区数据并标记写操作的目标扇区。
其中,所述方法进一步包括:
步骤50)、读取所述监控快照表,进行增量备份,同时保持监控磁盘操作。
其中,当增量备份时,根据监控快照表生成备份快照表。
其中,步骤20)进一步包括:获取对备份快照表的访问锁;读取备份快照表中对应的需备份的磁盘扇区数据;修改备份快照表,释放对备份快照表的访问锁;备份完成后进入增量监控状态。
其中,步骤31)进一步包括:
步骤310)、截获到应用层发送的信号和磁盘写操作;
步骤320)、获取对监控快照表的访问锁;
步骤330)、修改写操作的目标扇区对应的监控快照表的相应位;
步骤340)、释放对监控快照表的访问锁;放行所述写操作。
其中,步骤40)进一步包括:
步骤410)、接收所述磁盘过滤驱动装置发送的磁盘写操作信号;
步骤420)、当处于备份状态时,获取磁盘写操作信号的信息,获取对备份快照表的访问锁;
步骤430)、读取并存储写操作的目标扇区的数据至内存缓存队列磁盘,修改所述读取的目标扇区数据在备份快照表中对应位;
步骤440)、发送写操作放行信号。
本发明提出的系统和方法能够在上层业务不中断的情况下保证备份数据时间点的一致性,并能够有效避免死锁;并能够在磁盘驱动层次实现,具有更高的业务应用无关性,具有更广泛的通用性,可以在各种Windows、Unix、Linux等常见的操作系统上实现。
附图说明
图1是保持备份数据时间点一致性的备份系统结构示意图;
图2是备份快照表和监控快照表的示意图;
图3是磁盘备份分区状态转化示意图;
图4是备份控制过程的示意图;
图5是数据备份过程示意图;
图6是换页流程图;
图7是监控过程的示意图。
具体实施方式
下面结合附图和具体实施例对本发明提供的磁盘级数据备份系统和方法进行详细描述。
图1示出根据本发明的一个实施例提供的数据备份系统,包括备份控制装置A、写前读装置B、备份读装置C、磁盘过滤驱动装置D和换页装置E。
数据备份系统还包括一个备份快照表、一个监控快照表、内存缓存队列和硬盘缓存文件。其中,备份快照表和监控快照表的存放位置不做具体要求,只要需要访问快照表的装置能够访问到即可,但是,为了获得较好的访问效率,优选的实现方式是将备份快照表放在用户态,将监控快照表放在内核态;内存缓存队列放在内存中,硬盘缓存文件放在外存中。每一快照表中的每一位表示备份分区中一个磁盘扇区簇的状态,如图2所示,扇区簇包括的扇区数目与分区格式化时的选项有关,一般为8个扇区,即4K。在备份快照表中,“1”表示该位(Bit)对应的磁盘扇区簇需要进行备份,“0”表示该位对应的磁盘扇区簇不需要进行备份。备份快照表由备份读装置和写前读装置共享,是进行备份的依据。备份读装置依次读取备份快照表为“1”的位所对应的磁盘扇区;写前读装置获取磁盘过滤驱动装置发送的磁盘写操作信号,完成读取该写操作的目标磁盘扇区的数据后,将备份快照表中对应的标志位置“0”。监控快照表标记增量监控期间备份分区上被更改的磁盘扇区,由磁盘过滤驱动装置对其操作,截获到磁盘写操作后,将该写操作对应的位置“1”;当备份读装置从磁盘过滤驱动装置中读取监控快照表的内容用于增量备份时,磁盘过滤驱动将监控快照表全置“0”,开始新一轮的增量监控。
在图1所示系统中,如操作A101所示,备份控制装置A用于根据设定的调度规则来控制备份状态的切换以及控制备份读装置C和写前读装置B的启动和终止。
写前读装置B负责在备份过程中与磁盘过滤驱动装置D进行交互,写前读装置B接收到磁盘过滤驱动装置D的磁盘写操作信号后,根据备份快照表的目标扇区数据是否需要备份进行操作。如操作B101所示,如果需要备份并且还没有备份过,则读取目标扇区数据,将与备份读进程共享的备份快照表相应的位置“0”,表示该扇区数据已经进行过备份。完成该扇区数据读取后,将读取的数据放入内存缓存队列中,然后如操作B102所示,向磁盘过滤驱动装置发送写操作放行信号,放行该写操作,从而保证了备份数据的时间一致性;否则直接向磁盘过滤驱动装置发送写前读完成的信号。同时,换页装置负责定时检查内存缓存队列,如果发现内存缓存队列的数据超过预定的限制,就将数据移出到硬盘缓存文件。
如操作C101所示,备份读装置C用于根据备份快照表从磁盘上读取需要进行备份的磁盘扇区数据,进行备份读操作;备份读装置C能够发出至少一个从存储装置读原始数据的备份指令,该装置支持全量备份和增量备份;全量备份时,根据备份磁盘的使用状况来确定备份使用的备份快照表,只备份使用扇区的数据,降低备份数据量;增量备份时,从内核磁盘过滤驱动装置获取进行数据备份使用的备份快照表,只备份自上次增量备份后更改过的磁盘扇区数据。
磁盘过滤驱动装置D可以截获系统的磁盘读写操作,分辨读操作和写操作;能够和上层应用层进程进行通信。磁盘过滤驱动装置D主要负责监控并截获系统的写操作,记录写操作更改的磁盘扇区信息,并且在备份期间与写前读装置进行协作,如操作D101所示,向写前读装置发送磁盘写操作信号,通知写前读装置进行写前读处理,保证磁盘扇区数据备份完成后才放行该写操作。具体的,磁盘过滤驱动装置D操作监控快照表,用于监控磁盘写操作,记录增量监控期间被更改的磁盘扇区数据,并将写操作的目标扇区标记在监控快照表中,用做增量备份的依据;数据备份期间,该装置将磁盘写操作信号发送给写前读装置,在收到写前读装置处理完成的信号后,才放行写操作,进行实际写操作。
根据备份磁盘分区的备份状态,磁盘过滤驱动装置可以处于四种状态:空闲状态,阻塞状态,写前读监控状态和完全监控状态。磁盘过滤驱动装置处于空闲状态时,对磁盘读写操作只进行简单的转发,不进行任何操作;处于阻塞状态时,只转发磁盘的读操作,阻塞磁盘写操作;当开始进行全量/增量备份时,就进入写前读监控状态,截获到一个写操作后,首先判断是否需要向写前读装置发送信号,如果不需要,直接放行该写操作;否则,向写前读装置发送一个信号,写前读装置进行写前读处理,完成后向磁盘过滤驱动装置发送一个写操作放行信号,收到该信号后,磁盘过滤驱动装置将该写操作的目标扇区在监控快照表中对应的位置“1”,然后放行该写操作;当全量/增量备份操作完成后,进入完全监控状态,截获到磁盘写操作后,将写操作的目的扇区放在监控快照表中对应的位置“1”后,直接放行该写操作,不需要与写前读装置进行交互。
备份系统最基本的备份单位是磁盘分区,备份分区存在五种状态,如图3所示:未备份状态,全量备份状态,增量监控状态,增量备份状态和停止备份状态。未备份状态表示磁盘备份分区没有进行过任何备份操作;全量备份状态表示备份读装置正在对磁盘分区进行全量备份;增量监控状态表示磁盘过滤驱动装置正在对该磁盘分区进行写操作监控;增量备份状态表示备份读装置正在对该分区进行增量备份操作;停止备份状态表示停止对该分区的所有备份和监控操作。
如图3所示,状态的转换过程包括:
步骤201:从未备份状态启动备份后,磁盘备份分区首先进入全量备份状态;
步骤202:全量备份完成后,磁盘备份分区进入增量监控状态;
步骤203:全量备份过程中,收到终止备份信号后,该磁盘分区进入停止备份状态;
步骤204:到达增量备份时间点后,对该分区进行增量备份,该分区进入增量备份状态;
步骤205:增量监控过程中,收到终止备份信号后,该磁盘分区进入停止备份状态;
步骤206:增量监控过程中,到达增量备份时间点后,对该分区进行增量备份,该分区进入增量备份状态;
步骤207:增量监控过程中,收到终止备份信号后,该磁盘分区进入停止备份状态;
步骤208:备份分区以前备份过,启动备份后,不需要对该分区进行全量备份,备份分区直接从停止备份状态进入增量监控状态。
图4示出备份控制进程的执行过程,通过该过程可以进一步了解备份系统的执行过程,该过程包括:
步骤401:启动后,首先判断对磁盘备份分区是否进行过全量备份,如果没进行过全量备份,执行步骤402;如果进行过全量备份,直接执行步骤404;
步骤402:将备份分区的状态置为全量备份状态;
步骤403:启动备份读装置和写前读装置,进行全量备份;
步骤404:全量备份完成后,等待增量备份时间点;
步骤405:增量备份时间点到达后,启动备份读装置和写前读装置,进行增量备份操作。
图5示出备份分区处于备份状态(全量备份和增量备份)时的备份系统进行数据备份的工作流程。全量备份过程和增量备份过程,除了获取备份快照表的方式不同之外,其它过程都是相同的,因此都可以参照图5进行表述。进行全量备份时,备份快照表是根据磁盘备份分区的使用状况生成的,进行增量备份时,备份快照表是根据磁盘过滤驱动装置生成的监控快照表得到的。
如图5所示,数据备份过程可以由备份读装置C、写前读装置B和磁盘过滤驱动装置D三个装置协作实现。备份过程中,备份读装置负责根据备份快照表依次从磁盘上读取磁盘扇区数据;写前读装置负责实现对写操作目的磁盘扇区的优先读取,保证备份数据的时间一致性;磁盘过滤驱动装置负责监控并截获磁盘写操作,向写前读装置发送磁盘写操作信号,并记录写操作目的磁盘扇区信息。
备份过程中,备份读装置的执行过程包括:
步骤C501:判断要进行增量备份还是全量备份,如果是全量备份,执行步骤C502;如果是增量备份,执行步骤C503;
步骤C502:根据磁盘的使用情况生成备份快照表,使用扇区在快照表中对应的位都置为“1”;
步骤C503:从磁盘过滤驱动装置中获取备份快照表,备份快照表的内容和监控快照表的内容一致;
步骤C504:循环读取磁盘数据,进行备份,如果还有数据需要备份,执行步骤C505;如果数据备份完成,执行步骤C510;
步骤C505:获取对备份快照表的访问锁;
步骤C506:读取一段备份快照表;
步骤C507:读取备份快照表为“1”的位对应磁盘扇区数据,返回执行步骤C504;
步骤C508:将刚备份过的磁盘扇区数据在备份快照表中对应的位置为“0”;
步骤C509:释放对备份快照表的访问锁;
步骤C510:备份完成,将备份分区的状态改为增量监控状态;
步骤C511:向磁盘过滤驱动装置发送进入增量监控状态的信号。
备份过程中,写前读装置的执行过程包括:
步骤B501:循环等待磁盘过滤驱动装置发送的磁盘写操作信号,接收到磁盘写操作信号后,执行步骤B502;
步骤B502:判断备份分区所处的状态,如果处于全量/增量备份状态,则执行步骤B503;如果处于增量监控状态,则结束此次操作;
步骤B503:获取磁盘写操作信号的信息;
步骤B504:获取对备份快照表的访问锁;
步骤B505:判断该磁盘写操作的目标扇区是否已经被备份读装置读取过,如果没有被备份过,则依次执行步骤B506和B507;如果已经被备份读装置读取过,则直接执行步骤B508;
步骤B506:读取写操作的目标磁盘扇区的数据,将数据放入内存缓存队列;
步骤B507:将读取的磁盘扇区数据在备份快照表中对应的位置为0;
步骤B508:向磁盘过滤驱动装置发送写操作放行信号;
步骤B509:释放对备份快照表的访问锁。
备份过程中,磁盘过滤驱动装置的执行过程包括:
步骤D5001:磁盘过滤驱动装置监听应用层发送的信号和写操作,当截获到写操作后,将执行步骤D5002;当接收到备份读装置发送的进入增量监控状态的信号后,执行步骤D5101;当接收到备份读装置的读取备份快照表的信号后,执行步骤D5201;
步骤D5002:截获到磁盘写操作;
步骤D5003:判断备份分区是否处于备份状态,如果处于备份状态,执行步骤D5004;否则,执行步骤D5012;
步骤D5004:判断写操作的目标磁盘扇区在监控快照表中对应的位是否为“1”,为“1”表明曾经截获到该对该磁盘扇区的写操作,则直接执行步骤D5005;否则,表明第一次截获到对这些磁盘扇区的写操作,则依次执行步骤D5006到D5011;
步骤D5005:直接放行该写操作,将该写操作传送到下层磁盘驱动;
步骤D5006:向写前读装置发送磁盘写操作信号;
步骤D5007:等待写前读装置发送的写操作放行信号;
步骤D5008:接收到写操作放行信号后,放行该写操作,将该写操作传送到下层磁盘驱动;
步骤D5009:获取对监控快照表的访问锁;
步骤D5010:将该写操作在监控快照表中对应的位置为“1”,表明相应磁盘扇区的数据在增量监控期间被更改过;
步骤D5011:释放对监控快照表的访问锁。
步骤D5012:执行增量监控或其它操作。
当磁盘过滤驱动装置接收到备份读装置发送的进入增量监控状态的信号后,将执行步骤D5101-D5103,包括:
步骤D5101:接收进入增量监控状态的信号;
步骤D5102:向写前读装置发送一个磁盘写操作信号;
步骤D5103:将备份磁盘分区的状态改为增量监控状态。
当磁盘过滤驱动装置接收到备份读装置发送的获取备份快照表的信号时,将执行步骤D5201-D5206,包括:
步骤D5201:接收获取备份快照表的信号;
步骤D5202:获取对监控快照表的访问锁;
步骤D5203:将监控快照表复制给备份读装置作为备份快照表;
步骤D5204:将监控快照表全部清零;
步骤D5205:将备份分区的状态改为增量备份状态;
步骤D5206:释放对监控快照表的访问锁。
在写前读过程中,为了避免写前读装置直接将读取的数据缓存到磁盘时出现死锁的情况,引入了换页装置来完成将闪存缓存队列中的数据写入硬盘缓存文件的任务,具体执行过程如图6所示:
步骤E601:等待到达检测时间点;
步骤E602:到达检测时间点后,判断内存缓存队列是否超过预定长度,如果超过预定长度,执行步骤E603;否则执行步骤E601。其中所述预定长度可以由设计者指定,例如:64k。
步骤E603:将内存缓存队列的数据写到硬盘缓存文件。
在增量监控过程,主要工作装置是磁盘过滤驱动装置,该装置在增量监控过程中,主要负责监控对磁盘的写操作,并将写操作的目标扇区在监控快照表中对应的位置为“1”,表示该磁盘扇区数据自从上次备份以来被更改过,这些信息供增量数据备份过程中备份读装置使用,具体执行过程如图7所示:
步骤D701:磁盘过滤驱动装置等待应用层发送的信号和写操作;
步骤D702:截获到磁盘写操作;
步骤D703:判断写操作的目标分区的备份状态,如果处于增量监控状态,则依次执行步骤D704-D707;否则,执行步骤D708;
步骤D704:获取对监控快照表的访问锁;
步骤D705:将写操作的目标扇区对应的监控快照表相应的位置“1”;
步骤D706:释放对监控快照表的访问锁;
步骤D707:放行该写操作;
步骤D708:执行数据备份其它相关操作。
从上述内容可以看出,本发明可以解决备份数据量不断增加所导致的备份时间越来越长与业务应用不可停止的矛盾,使得在数据备份的过程中,保证其它业务应用的持续正常执行,同时保证备份数据的时间一致性,避免备份过程中必须中断业务应用的问题,实现支持零备份窗口的磁盘级数据备份,并通过换页机制解决了写前读的死锁问题,提高了数据备份系统的实用性。本发明同时解决数据灾备技术的应用相关性问题,避免针对不同的业务应用设计并实现不同的备份系统,提高数据备份方法和系统的应用透明性和通用性,实现基于磁盘过滤驱动进行数据灾备与上层业务应用无关,不需要针对具体业务应用和数据库系统设计不同的数据备份系统,增强数据备份技术的通用性和实用性。
应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。

Claims (17)

1.一种磁盘级数据备份系统,包括下列装置:
备份控制装置、写前读装置、备份读装置、磁盘过滤驱动装置、换页装置、备份快照表、内存缓存队列和硬盘缓存文件;其中
所述备份快照表用于记录磁盘扇区数据是否需要备份;
所述备份控制装置用于控制所述备份读装置和所述写前读装置的启动和终止;
所述备份读装置用于根据所述备份快照表读取需要备份的磁盘扇区数据进行备份;
所述磁盘过滤驱动装置用于监控并截获磁盘写操作,向所述写前读装置发送磁盘写操作信号;
所述写前读装置用于在备份过程中接收所述磁盘过滤驱动装置发送的磁盘写操作信号并向所述磁盘过滤驱动装置发送写操作放行信号;所述写前读装置根据磁盘写操作信号和备份快照表读取目标扇区数据进行备份,并将所述目标扇区数据放入内存缓存队列中;
所述换页装置用于定时检查内存缓存队列,内存缓存队列的数据超过预定长度时,将数据移出到硬盘缓存文件。
2、权利要求1所述的系统,其中,所述系统还包括监控快照表,所述监控快照表用来记录增量监控期间被更改的磁盘扇区数据,标记磁盘写操作的目标扇区,用做增量备份的依据;当所述磁盘过滤驱动装置截获到磁盘写操作后,在所述监控快照表中记录所述磁盘写操作的目标磁盘扇区信息。
3、权利要求1所述的系统,其中,所述写前读装置接收到所述磁盘写操作信号后,根据备份快照表,完成读取目标扇区数据后,向所述磁盘过滤驱动装置发送写操作放行信号。
4、权利要求1所述的系统,其中,所述磁盘过滤驱动装置截获并辨别对磁盘的读写操作;其中,所述磁盘过滤驱动装置获取上层应用层对所述磁盘的读写操作。
5、权利要求1所述的系统,其中,所述系统进行全量备份和增量备份;在全量备份时,所述备份读装置根据备份磁盘的使用状况备份使用扇区的数据;在增量备份时,所述备份读装置从所述磁盘过滤驱动装置获取进行数据备份使用的备份快照表,备份自上次增量备份后更改过的磁盘扇区数据。
6、权利要求2所述的系统,其中,所述监控快照表存放在内核态。
7、权利要求1所述的系统,其中,所述备份快照表存放在用户态。
8、权利要求1所述的系统,其中,所述备份快照表记录备份分区中每一个磁盘扇区簇是否需要备份。
9、权利要求2所述的系统,其中,所述监控快照表记录备份分区中每一个磁盘扇区簇的数据在增量监控期间是否被更改过。
10、权利要求1所述的系统,其中,所述磁盘过滤驱动装置包括四种状态:空闲状态,阻塞状态,写前读监控状态和完全监控状态;所述磁盘过滤驱动装置处于空闲状态时,对磁盘读写操作进行简单的转发;所述磁盘过滤驱动装置处于阻塞状态时,转发磁盘的读操作,阻塞磁盘写操作;当开始进行全量/增量备份时,所述磁盘过滤驱动装置进入写前读监控状态,向所述写前读装置发送截获到的写操作信号;当全量/增量备份操作完成后,所述磁盘过滤驱动装置进入完全监控状态,直接放行截获到的磁盘写操作。
11、一种磁盘级数据备份方法,包括:
步骤10)、获取用于记录磁盘扇区数据是否需要备份的备份快照表;
步骤20)、根据所述获取的备份快照表从磁盘上依次读取需要备份的磁盘扇区数据进行备份,同时开始监控磁盘操作;
步骤30)、监控写磁盘操作,截获写磁盘操作;
步骤40)、如果在备份期间截获到写操作信号,从所述被写磁盘读取并存储数据至内存缓存队列,当内存缓存队列的数据超过预定长度时,将数据移出到硬盘缓存文件,发送写操作放行信号,完成写前读操作。
12、权利要求11所述的方法,其中,步骤30)进一步包括:
步骤31)、截获到磁盘写操作后,将写操作的目标扇区标记在监控快照表中,其中,所述监控快照表用来记录增量监控期间被更改的磁盘扇区数据并标记写操作的目标扇区。
13、权利要求12所述的方法,其中,所述方法进一步包括:
步骤50)、读取所述监控快照表,进行增量备份,同时保持监控磁盘操作。
14、权利要求13所述的方法,其中,当增量备份时,根据监控快照表生成备份快照表。
15、权利要求11所述的方法,其中,步骤20)进一步包括:获取对备份快照表的访问锁;读取备份快照表中对应的需备份的磁盘扇区数据;修改备份快照表,释放对备份快照表的访问锁;备份完成后进入增量监控状态。
16、权利要求12所述的方法,其中,步骤31)进一步包括:
步骤310)、截获到应用层发送的信号和磁盘写操作;
步骤320)、获取对监控快照表的访问锁;
步骤330)、修改写操作的目标扇区对应的监控快照表的相应位;
步骤340)、释放对监控快照表的访问锁;放行所述写操作。
17、权利要求11所述的方法,其中,步骤40)进一步包括:
步骤410)、接收所述磁盘过滤驱动装置发送的磁盘写操作信号;
步骤420)、当处于备份状态时,获取磁盘写操作信号的信息,获取对备份快照表的访问锁;
步骤430)、读取并存储写操作的目标扇区的数据至内存缓存队列磁盘,修改所述读取的目标扇区数据在备份快照表中对应位;
步骤440)、发送写操作放行信号。
CN2008101153297A 2008-06-20 2008-06-20 一种磁盘级数据备份系统和方法 Expired - Fee Related CN101295276B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101153297A CN101295276B (zh) 2008-06-20 2008-06-20 一种磁盘级数据备份系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101153297A CN101295276B (zh) 2008-06-20 2008-06-20 一种磁盘级数据备份系统和方法

Publications (2)

Publication Number Publication Date
CN101295276A true CN101295276A (zh) 2008-10-29
CN101295276B CN101295276B (zh) 2010-06-09

Family

ID=40065571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101153297A Expired - Fee Related CN101295276B (zh) 2008-06-20 2008-06-20 一种磁盘级数据备份系统和方法

Country Status (1)

Country Link
CN (1) CN101295276B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184248A (zh) * 2011-05-20 2011-09-14 深圳市万兴软件有限公司 一种在Windows下调整磁盘分区的方法及装置
CN102436411A (zh) * 2011-12-31 2012-05-02 曙光信息产业股份有限公司 计算机系统进程恢复方法
CN102467569A (zh) * 2010-11-16 2012-05-23 英业达股份有限公司 在重复数据删除中支持文件并发读写的方法
WO2013170702A1 (zh) * 2012-05-15 2013-11-21 记忆科技(深圳)有限公司 基于快照的文件处理方法及具有快照功能的固态硬盘
CN103543958A (zh) * 2013-09-30 2014-01-29 华为技术有限公司 一种增量数据拷贝的方法和装置
CN103729262A (zh) * 2012-10-12 2014-04-16 武汉海康威视系统技术有限公司 操作系统热备份方法、装置及文件系统重构方法
CN103761053A (zh) * 2013-12-30 2014-04-30 华为技术有限公司 一种数据处理方法和装置
CN104216792A (zh) * 2013-05-29 2014-12-17 华为软件技术有限公司 数据备份的方法及内存数据库存储引擎
CN104461642A (zh) * 2014-12-16 2015-03-25 浪潮电子信息产业股份有限公司 基于Linux系统下4K技术硬盘性能提升设定及性能检测的方法
CN104714792A (zh) * 2013-12-17 2015-06-17 腾讯科技(深圳)有限公司 多进程共享数据处理方法和装置
CN104866602A (zh) * 2015-06-01 2015-08-26 走遍世界(北京)信息技术有限公司 队列处理方法及装置
CN106294024A (zh) * 2016-08-13 2017-01-04 南京叱咤信息科技有限公司 一种快速磁盘增量备份方法
CN107402838A (zh) * 2016-05-18 2017-11-28 深圳市深信服电子科技有限公司 一种基于写缓存的备份方法及存储系统
CN109614268A (zh) * 2018-12-10 2019-04-12 浪潮(北京)电子信息产业有限公司 一种云备份数据的恢复方法、装置及系统
CN109614055A (zh) * 2018-12-21 2019-04-12 杭州宏杉科技股份有限公司 快照创建方法、装置、电子设备及机器可读存储介质
CN111722805A (zh) * 2020-06-19 2020-09-29 艾索信息股份有限公司 一种高效获取磁盘读写io数据信息的系统及其方法
CN113282245A (zh) * 2021-06-15 2021-08-20 中国建设银行股份有限公司 一种审计供数的方法及主机平台
CN113742140A (zh) * 2021-11-03 2021-12-03 统信软件技术有限公司 一种文件备份方法、装置及计算设备
CN116643927A (zh) * 2023-07-27 2023-08-25 成都艾勃科技有限公司 一种基于Windows系统的固态硬盘快照备份方法
CN117349086A (zh) * 2023-12-04 2024-01-05 四川精容数安科技有限公司 一种Windows整机永久增量备份的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1373402A (zh) * 2001-02-28 2002-10-09 廖瑞民 硬盘数据保全复原装置
CN101256528B (zh) * 2008-03-20 2010-07-28 中国科学院计算技术研究所 支持零备份窗口的磁盘级数据备份系统和方法

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467569A (zh) * 2010-11-16 2012-05-23 英业达股份有限公司 在重复数据删除中支持文件并发读写的方法
CN102184248A (zh) * 2011-05-20 2011-09-14 深圳市万兴软件有限公司 一种在Windows下调整磁盘分区的方法及装置
CN102184248B (zh) * 2011-05-20 2013-06-19 深圳万兴信息科技股份有限公司 一种在Windows下调整磁盘分区的方法及装置
CN102436411A (zh) * 2011-12-31 2012-05-02 曙光信息产业股份有限公司 计算机系统进程恢复方法
CN102436411B (zh) * 2011-12-31 2015-07-22 曙光信息产业股份有限公司 计算机系统进程恢复方法
WO2013170702A1 (zh) * 2012-05-15 2013-11-21 记忆科技(深圳)有限公司 基于快照的文件处理方法及具有快照功能的固态硬盘
CN103729262A (zh) * 2012-10-12 2014-04-16 武汉海康威视系统技术有限公司 操作系统热备份方法、装置及文件系统重构方法
CN103729262B (zh) * 2012-10-12 2017-08-11 杭州海康威视系统技术有限公司 操作系统热备份方法、装置及文件系统重构方法
CN104216792A (zh) * 2013-05-29 2014-12-17 华为软件技术有限公司 数据备份的方法及内存数据库存储引擎
CN104216792B (zh) * 2013-05-29 2017-05-31 华为软件技术有限公司 数据备份的方法及内存数据库存储引擎
CN103543958B (zh) * 2013-09-30 2017-02-15 华为技术有限公司 一种增量数据拷贝的方法和装置
CN103543958A (zh) * 2013-09-30 2014-01-29 华为技术有限公司 一种增量数据拷贝的方法和装置
CN104714792B (zh) * 2013-12-17 2019-02-26 腾讯科技(深圳)有限公司 多进程共享数据处理方法和装置
CN104714792A (zh) * 2013-12-17 2015-06-17 腾讯科技(深圳)有限公司 多进程共享数据处理方法和装置
CN103761053A (zh) * 2013-12-30 2014-04-30 华为技术有限公司 一种数据处理方法和装置
CN103761053B (zh) * 2013-12-30 2017-08-25 华为技术有限公司 一种数据处理方法和装置
CN104461642A (zh) * 2014-12-16 2015-03-25 浪潮电子信息产业股份有限公司 基于Linux系统下4K技术硬盘性能提升设定及性能检测的方法
CN104866602A (zh) * 2015-06-01 2015-08-26 走遍世界(北京)信息技术有限公司 队列处理方法及装置
CN107402838A (zh) * 2016-05-18 2017-11-28 深圳市深信服电子科技有限公司 一种基于写缓存的备份方法及存储系统
CN106294024A (zh) * 2016-08-13 2017-01-04 南京叱咤信息科技有限公司 一种快速磁盘增量备份方法
CN109614268A (zh) * 2018-12-10 2019-04-12 浪潮(北京)电子信息产业有限公司 一种云备份数据的恢复方法、装置及系统
CN109614055A (zh) * 2018-12-21 2019-04-12 杭州宏杉科技股份有限公司 快照创建方法、装置、电子设备及机器可读存储介质
CN111722805B (zh) * 2020-06-19 2023-04-14 艾索信息股份有限公司 一种高效获取磁盘读写io数据信息的系统及其方法
CN111722805A (zh) * 2020-06-19 2020-09-29 艾索信息股份有限公司 一种高效获取磁盘读写io数据信息的系统及其方法
CN113282245A (zh) * 2021-06-15 2021-08-20 中国建设银行股份有限公司 一种审计供数的方法及主机平台
CN113282245B (zh) * 2021-06-15 2024-04-12 中国建设银行股份有限公司 一种审计供数的方法及主机平台
CN113742140A (zh) * 2021-11-03 2021-12-03 统信软件技术有限公司 一种文件备份方法、装置及计算设备
CN116643927A (zh) * 2023-07-27 2023-08-25 成都艾勃科技有限公司 一种基于Windows系统的固态硬盘快照备份方法
CN116643927B (zh) * 2023-07-27 2023-09-26 成都艾勃科技有限公司 一种基于Windows系统的固态硬盘快照备份方法
CN117349086A (zh) * 2023-12-04 2024-01-05 四川精容数安科技有限公司 一种Windows整机永久增量备份的方法
CN117349086B (zh) * 2023-12-04 2024-02-23 四川精容数安科技有限公司 一种Windows整机永久增量备份的方法

Also Published As

Publication number Publication date
CN101295276B (zh) 2010-06-09

Similar Documents

Publication Publication Date Title
CN101295276B (zh) 一种磁盘级数据备份系统和方法
CN101256528B (zh) 支持零备份窗口的磁盘级数据备份系统和方法
EP0566966B1 (en) Method and system for incremental backup copying of data
JP2557172B2 (ja) タイムゼロ・バックアップ・コピー・プロセスにおける副ファイル状態のポーリングのための方法およびシステム
US5379398A (en) Method and system for concurrent access during backup copying of data
CN1331063C (zh) 基于数据卷快照的在线数据备份方法
US10365976B2 (en) Scheduling and managing series of snapshots
CN100430945C (zh) 动态切换将事务数据写入盘中的模式的设备和方法
JP5705309B2 (ja) バックアップ・プロセスを処理する方法、システム、及びコンピュータ・プログラム
US9569314B2 (en) Flash copy for disaster recovery (DR) testing
US20110231698A1 (en) Block based vss technology in workload migration and disaster recovery in computing system environment
US20120239624A1 (en) Backup and restoration of computer information
KR950014175B1 (ko) 데이타의 타임제로 백업 복사 방법과 수단
US20120311261A1 (en) Storage system and storage control method
JPH0683686A (ja) タイム・ゼロ・バックアップ・セッションの安全保護機能を有するデータ処理方法及びシステム
US20110167234A1 (en) Backup system and its control method
CN101403988A (zh) 一种计算机系统中文件备份的系统及方法
CN101441582A (zh) 计算机数据对象的备份和恢复方法及实现该方法的系统和程序产品
US9898370B2 (en) Flash copy for disaster recovery (DR) testing
CN101501653B (zh) 磁盘的长期备份
JP2014142852A (ja) ストレージシステムおよび制御装置
US20080256309A1 (en) Maintain owning application information of data for a data storage system
WO2019196157A1 (zh) 一种文件读取方法及应用实体
JPH10320255A (ja) チェックポイント/ロールバック方式の計算機における入出力装置制御装置、及び方法
JP2007094938A (ja) データ管理プログラム、データ管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100609

Termination date: 20200620

CF01 Termination of patent right due to non-payment of annual fee