快照保护方法及装置的制作方法

文档序号:6611030阅读:165来源:国知局
专利名称:快照保护方法及装置的制作方法
技术领域
本发明涉及数据保护技术领域,具体涉及一种快照保护方法及装置。
背景技术
随着信息科学技术的广泛应用与不断发展,数据量迅猛增长,数据保护也变得越来越重要。为能够在不中断主机业务的前提下,快速生成业务应用的数据对象在某时间点的副本,并占用较少的存储空间,已经提出了虚拟快照技术对业务运行中某个时刻的应用数据进行备份。在本文中,将为业务应用提供数据存储和访问空间的卷称为生产卷。快照创建后,对快照的访问可以和对生产卷的访问同时进行,当生产卷希望恢复到快照时间点的数据时,可对生产卷执行快照回滚,在一定程度上保障了数据的可靠性和完整性。
现有虚拟快照技术的一般方法描述如下1、在创建快照时,生成一个映射表,指示快照的实际数据的存放位置。显然,快照创建最初,其映射表中的地址指针都指向生产卷中。此过程的一个示例如图1所示,快照通过映射表指示生产卷某时刻的数据A、B、C、D,此时快照数据共享生产卷的数据存储空间。
2、当要对生产卷做修改时,先将要改动部分的数据复制到快照的资源卷,并修改快照的映射表,使指针指向资源卷中相应位置,然后对生产卷做修改,这种方法称为写前拷贝(COWCopy-On-Write)。基于图1此过程的一个示例如图2所示,当主机需要将生产卷中的数据“D”写为“E”时,先将“D”复制到快照的资源卷,然后再将生产卷中的“D”修改为“E”,并修改快照的映射表,使与数据“D”对应的指针指向资源卷中相应位置。当然,如果对已经做了写前拷贝的部分再次进行修改,则可直接进行,不再进行写前拷贝。
由上可以看出,虚拟快照建立了一份创建时间点上生产卷数据的逻辑副本,快照数据与生产卷数据尽量共用物理存储空间。当读快照时,根据快照的映射表中的映射信息,到生产卷或快照的资源卷中相应的位置读取数据;当写快照时,根据映射表中的映射信息,如果要写入的部分已经指向快照的资源卷中,则根据指针将数据覆盖写入资源卷中相应位置;如果要写入的部分仍然指向生产卷中,则将数据写入资源卷中,并修改映射表,使指针指向资源卷中相应位置。
在提出本发明的过程中,本发明的发明人发现上述虚拟快照技术至少存在如下缺陷无法对快照数据提供保护,一旦用户修改了快照数据,生产卷将无法恢复到最初快照时间点的数据;并且不利于满足某些应用场合的要求,例如,多台应用主机同时处理某时间点快照数据的要求等。

发明内容
本发明实施例提供一种能够对快照数据提供保护的快照保护方法,包括获取对第一快照创建快照副本的指示;按照所述创建快照副本的指示,创建第一快照的副本;获取对第一快照和/或第一快照的副本的操作指示;按照所述操作指示,对第一快照和/或第一快照的副本执行相应的操作。
本发明实施例还提供相应的快照保护装置,包括保护触发单元,用于获取对第一快照创建快照副本的指示;副本创建单元,用于按照所述创建快照副本的指示,创建第一快照的副本;操作触发单元,用于获取对第一快照和/或第一快照的副本的操作指示;操作执行单元,用于按照所述操作指示,对第一快照和/或第一快照的副本执行相应的操作。
本发明实施例采用对快照创建快照副本,分别对快照和快照副本执行操作的方法;由于采用快照副本对快照数据进行备份,使得即使修改了快照数据,也可以通过快照副本来恢复快照时间点的数据,对快照提供了有效的保护;同时,基于快照和快照的若干副本,能够满足对同一时间点快照数据的并行操作要求,例如,可满足多台应用主机同时处理某时间点快照数据的要求等。


图1是现有虚拟快照创建示意图;图2是现有虚拟快照写前拷贝操作示意图;图3是本发明实施例一快照保护方法流程示意图;图4是本发明实施例一中通过数据拷贝创建快照副本示意图;图5是本发明实施例二快照保护方法流程示意图;
图6是本发明实施例二中通过复制映射表创建快照副本示意图;图7是本发明实施例二中快照及快照副本写前拷贝示意图;图8是本发明实施例二中写快照示意图;图9是本发明实施例三快照保护方法流程示意图;图10是本发明实施例三中通过复制映射表和资源卷创建快照副本示意图;图11是本发明实施例四快照保护方法流程示意图;图12是本发明实施例四中通过共享映射表创建快照副本示意图;图13是本发明实施例四中快照及快照副本写前拷贝示意图;图14是本发明实施例四中写快照示意图;图15是本发明实施例五快照保护装置逻辑结构示意图;图16是本发明实施例六快照保护装置逻辑结构示意图;图17是本发明实施例七快照保护装置逻辑结构示意图;图18是本发明实施例八快照保护装置逻辑结构示意图。
具体实施例方式
本发明实施例提供了一种快照保护方法,对快照创建快照副本,分别对快照和快照副本执行操作。本发明实施例还提供相应的快照保护装置。以下分别进行详细说明。
实施例一、一种快照保护方法,流程如图3所示,包括A1、获取对第一快照创建快照副本的指示。
本实施例中的第一快照具有普遍的含义,即以映像方式进行数据保存的数据对象。第一快照可以是直接由生产卷创建的快照,也可以是执行了修改操作后的快照;并且如果创建的快照副本仍然保留映像式的数据结构,即仍可称为“快照”,则第一快照还可以是另一快照的副本,也就是说可以指示对快照的副本再创建副本。
对同一快照可一次或多次指示创建快照副本,创建快照副本的指示可以在第一快照创建之初或创建之后随时作出。具体的指示下达方式和时机可根据应用情况确定,包括但不限于如下示例为保护快照的原始数据,可在需要对快照进行修改前,指示创建快照副本;
为保护修改后的快照,可在进行快照修改后,或在进行快照恢复前,或在进行再次修改前,指示创建修改后的快照副本;为将快照提供给多台应用主机使用,可在快照创建之初即按照主机数目指示创建不少于主机数目的快照副本,或按照需要随时指示创建快照副本,以增加快照数量。
A2、按照所述创建快照副本的指示,创建第一快照的副本。
创建快照的副本可采用各种能够完整保存快照数据信息的方式,包括但不限于方式一、对与第一快照的映射表对应的数据进行数据拷贝,以所述数据拷贝的内容作为第一快照的副本。此方式的一个示例如图4所示,图4中第一快照保存了某时刻生产卷的数据映像A、B、C、D,可通过数据拷贝将第一快照复制若干份完整副本,分别为快照副本1~n。复制数量和时机由步骤A1中获取的创建快照副本的指示来确定,快照副本的应用包括但不限于如下示例为保护第一快照,指示创建第一快照的快照副本1,当第一快照被修改,而生产卷希望恢复到第一快照时间点的数据时,先将快照副本1完整复制到第一快照,然后对生产卷执行快照回滚;为进行多主机应用,指示创建第一快照的快照副本1~n,然后根据应用需求映射给多个主机;为保护修改后的第一快照,每到第一快照修改后即指示创建修改后的第一快照的快照副本。
方式二、采用映像式的数据结构创建第一快照的副本,使得快照和快照副本部分共享或尽量共享数据存储空间。快照和快照副本可以只共享生产卷中的数据,也可以还共享写前拷贝数据等,这种方式创建的快照副本与快照具有相同的数据结构形式,同样可被视为生产卷的快照,采用与快照相同的操作处理方式。
A3、获取对第一快照和/或第一快照的副本的操作指示。
本文中所称操作指示包括保持数据对象内容不变的操作指示和对数据对象执行修改的操作指示,其中
保持数据对象内容不变的操作包括对快照或快照副本的读操作;在快照或快照副本采用映像式的数据结构的情况下,当数据映像发生修改时为保持快照或快照副本的数据内容不变而进行的写前拷贝操作等。这类操作指示可对某个指定的快照或快照副本作出,也可对某些快照或快照副本作出。例如,可以指示读某个指定的快照;也可以由于生产卷数据修改,指示所有共享生产卷数据的快照和快照副本执行写前拷贝操作。当然对于通过数据拷贝方式完整复制获得的快照副本,由于其采用独立的物理存储,因此在生产卷数据修改时不会对其造成影响。
对数据对象执行修改的操作包括对快照或快照副本的写操作、恢复操作等,这些操作通常会指示指定的执行对象,例如指示写某个指定的快照或快照副本。
此外,为更好的控制快照和快照副本的可操作性,操作指示中还可包括一类特别的状态设置指示,该指示通常对指定的快照或快照副本作出。通过指示将指定快照或快照副本的状态设置为可用或不可用,更好的进行数据保护,避免误操作。例如,可规定当快照状态设置为不可用时,不能对该快照执行修改类操作,以保证该快照数据内容不变;该示例的一种应用场景为,在某快照由生产卷创建后,创建该快照的若干副本提供给应用或测试使用,而将该快照设置为不可用,保证原始数据的完整与准确。
A4、按照所述操作指示,对第一快照和/或第一快照的副本执行相应的操作。
具体操作内容可按照操作指示执行,快照和快照副本均可作为独立的操作对象。需要说明的是,基于快照副本的创建方式,有可能在执行步骤A2创建快照副本的过程中需要进行数据内容的复制,若在步骤A2尚未完成时,即快照副本尚未创建完成时,获取到步骤A3的操作指示,并且该操作指示涉及正在创建中的快照副本,可采用如下方式若操作指示是针对快照副本已复制部分的内容的,则按照指示执行即可;若操作指示针对的是快照副本未复制部分的内容的,则可等待该部分复制后再执行相应的操作。
本实施例采用对快照创建快照副本,分别对快照和快照副本执行操作的方法;由于采用快照副本对快照数据进行备份,使得即使修改了快照数据,也可以通过快照副本来恢复快照时间点的数据,对快照提供了有效的保护;同时,基于快照和快照的若干副本,能够满足对同一时间点快照数据的并行操作要求。
下面基于实施例一提出若干种采用创建快照副本的方式的保护快照的方法。
实施例二、一种快照保护方法,与实施例一中提供的通过数据拷贝创建快照副本的方式相比,区别之处在于采用复制映射表的方式创建快照副本,流程如图5所示,包括B1、获取对第一快照创建快照副本的指示。
此步骤可参考实施例一中的步骤A1。
B2、按照所述创建快照副本的指示,复制第一快照的映射表并创建第二快照,以所述复制的映射表作为第二快照的映射表,以第二快照作为第一快照的副本。
此副本创建方式的一个示例如图6所示,图6中第一快照保存了某时刻生产卷的数据映像A、B、C、D,通过复制第一快照的映射表生成第二快照作为第一快照的副本,同理,还可以再次复制第一快照的映射表生成第三快照作为第一快照的又一份副本(当然,第三快照也可以是复制第二快照的映射表得到的第二快照的副本)。
通过复制映射表生成的快照副本与原快照具有相同的数据结构形式,同样可视为生产卷的快照,可视同普通快照执行修改、创建副本等操作。
B3、获取对第一快照和/或第二快照的操作指示。此步骤可参考实施例一中的步骤A3,示例如下B31、在生产卷发生数据修改时,获取对各个快照的写前拷贝指示;B32、获取对指定快照的修改指示。
B4、按照所述操作指示,对第一快照和/或第二快照执行相应的操作。
例如,对于步骤B31获取的操作指示,执行步骤如下
B411、将需要修改的生产卷数据拷贝到快照共享资源卷;B412、将第一快照的映射表和第二快照的映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
基于图6,上述步骤B411和B412的示意图如图7所示,当主机需要将生产卷中的数据“D”写为“E”时,先将“D”复制到快照的共享资源卷,然后再将生产卷中的“D”修改为“E”,并修改各个快照的映射表,使与数据“D”对应的指针指向快照共享资源卷中相应位置。由于图7中第三快照同样共享生产卷数据,因此也需要修改第三快照的映射表。当然,若主机修改的是已经进行了写前拷贝的部分的生产卷数据,则直接进行修改即可,无须再进行写前拷贝操作。
由于在创建第二快照时需要复制第一快照的映射表,若在映射表尚未复制完成时获取到写前拷贝指示,则可判断该指示针对的映射信息是否已经被复制,若已经被复制,则按上述过程执行该指示即可,若尚未被复制,即第二快照与该指示相关的内容尚未被创建,可认为该写前拷贝指示仅对第一快照作出,因此不必对创建中的第二快照执行该指示。
对于步骤B32获取的操作指示,执行步骤如下B421、判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则执行步骤B424;若否,则执行步骤B422;B422、将需要修改的数据拷贝到指定快照的私有资源卷;B423、将指定快照的映射表中与该数据对应的地址,修改为该数据在指定快照的私有资源卷中的地址;B424、修改指定快照的私有资源卷中相应地址的数据。
基于图7,上述步骤B421~B424的示意图如图8所示,当主机需要将第一快照中的数据“C”修改为“F”时,先将“C”复制到第一快照的私有资源卷,然后将第一快照的映射表中“C”原来的地址信息修改为第一快照的私有资源卷中新的地址信息,再将第一快照的私有资源卷中的“C”修改为“F”。当然,如果后续主机还需要写第一快照,若需要修改的数据已拷贝到快照私有资源卷中,则可直接写入私有资源卷。此外,在执行上述步骤时,也可省略步骤B422,直接将要写入的数据写到快照私有资源卷中,然后修改快照映射表的相应指针指向该已写入的数据即可。
本实施例中采用复制映射表的方式创建快照的副本,快照与快照的副本不仅共享生产卷数据还具有共享资源卷,仅将对指定快照的修改部分存入其私有资源卷,使得快照及其副本尽量共享公共数据,节省存储空间。同时快照副本具有与快照相同的用户属性,仍然是生产卷的快照,可以与快照一样进行操作和处理。
实施例三、一种快照保护方法,与实施例一中提供的通过数据拷贝创建快照副本的方式相比,区别之处在于采用复制映射表和资源卷的方式创建快照副本,流程如图9所示,包括C1、获取对第一快照创建快照副本的指示。
此步骤可参考实施例一中的步骤A1。
C2、按照所述创建快照副本的指示,通过复制第一快照的映射表和资源卷来创建第二快照,以第二快照作为第一快照的副本;具体步骤包括C21、复制第一快照的映射表中的映射信息;C22、判断所复制的映射信息中的地址是否指向第一快照的资源卷,若是则执行步骤C23;若否,则继续执行步骤C21,复制第一快照的映射表中的另一映射信息;C23、将第一快照的资源卷中所述地址对应的数据复制到第二快照的资源卷中,并使第二快照的映射表中该部分的映射信息指向第二快照的资源卷中的相应地址,然后继续执行步骤C21,复制第一快照的映射表中的另一映射信息;C24、第一快照的映射表复制完成。
此副本创建方式的一个示例如图10所示,图10中第一快照保存了某时刻生产卷的数据映像A、B、C、D,其中数据A、B、C指向生产卷,数据D指向第一快照的资源卷。通过复制第一快照的映射表生成第二快照的映射表,对于数据A、B、C,仅复制其映射信息,在复制数据D的映射信息时,由于该数据指向第一快照的资源卷,因此需要复制数据D到第二快照的资源卷,然后将第二快照的映射表中数据D的映射信息指向第二快照的资源卷中的相应地址。同理,还可以再次复制第一快照的映射表和资源卷生成第三快照作为第一快照的又一份副本(当然,第三快照也可以是复制第二快照的映射表和资源卷得到的第二快照的副本)。
通过复制映射表和资源卷生成的快照副本与现有快照性质完全相同,因此可完全按照现有方式对其进行操作。
C3、获取对第一快照和/或第二快照的操作指示。此步骤可参考实施例一中的步骤A3,示例如下C31、在生产卷发生数据修改时,获取对各个快照的写前拷贝指示;C4、按照所述操作指示,对第一快照和/或第二快照执行相应的操作。
例如,对于步骤C31获取的操作指示,执行步骤如下C411、将需要修改的生产卷数据拷贝到各个快照的资源卷;C412、将各个快照的映射表中与该数据对应的地址,修改为该数据在对应的快照的资源卷中的地址。
由于本实施例中快照和快照副本均与现有快照性质相同,因此对其执行写前拷贝操作的方式可采用现有快照进行写前拷贝的处理方式。当然,与实施例二中类似,若执行写前拷贝时,第二快照的映射表尚未复制完成,则可判断该指示针对的映射信息是否已经被复制,若已经被复制,则按上述过程执行该指示即可,若尚未被复制,即第二快照与该指示相关的内容尚未被创建,可认为该写前拷贝指示仅对第一快照作出,因此不必对创建中的第二快照执行该指示。
若步骤C3中获取的是对指定快照的修改指示,例如对第一快照或第二快照的修改指示,同样可按照现有写快照的方式执行,不再赘述。
本实施例中采用复制映射表和资源卷的方式创建快照的副本,创建的快照副本与现有快照性质完全相同,因此对快照副本的处理方式可以与现有对快照的处理方式完全一样,不会增加系统处理的复杂度。
实施例四、一种快照保护方法,与实施例一中提供的通过数据拷贝创建快照副本的方式相比,区别之处在于采用共享映射表的方式创建快照副本,流程如图11所示,包括
D1、获取对第一快照创建快照副本的指示。
此步骤可参考实施例一中的步骤A1。
D2、按照所述创建快照副本的指示,创建第二快照,以第一快照的映射表作为第一快照和第二快照的共享映射表,以第二快照作为第一快照的副本。
此副本创建方式的一个示例如图12所示,图12中第一快照保存了某时刻生产卷的数据映像A、B、C、D,通过将第一快照的映射表作为第一快照和第二快照的共享映射表创建第二快照作为第一快照的副本,同理,还可以将该共享映射表作为第三快照的映射表创建第一快照的又一份副本(当然,第三快照也可视为第二快照的副本)。
通过共享映射表生成的快照副本与原快照具有相同的数据结构形式,同样可视为生产卷的快照,可视同普通快照执行修改、创建副本等操作。
D3、获取对第一快照和/或第二快照的操作指示。此步骤可参考实施例一中的步骤A3,示例如下D31、在生产卷发生数据修改时,获取对各个快照的写前拷贝指示;D32、获取对指定快照的修改指示。
D4、按照所述操作指示,对第一快照和/或第二快照执行相应的操作。
例如,对于步骤D31获取的操作指示,执行步骤如下D411、将需要修改的生产卷数据拷贝到快照共享资源卷;D412、将所述共享映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
基于图12,上述步骤D411和D412的示意图如图13所示,当主机需要将生产卷中的数据“D”写为“E”时,先将“D”复制到快照的共享资源卷,然后再将生产卷中的“D”修改为“E”,并修改快照的共享映射表,使与数据“D”对应的指针指向快照共享资源卷中相应位置。由于快照及其副本使用同一个共享映射表,因此只需进行一次修改即可。
对于步骤D32获取的操作指示,执行步骤如下D421、判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则执行步骤D424;若否,则执行步骤D422;
D422、将需要修改的数据拷贝到指定快照的私有资源卷;D423、将该数据在指定快照的私有资源卷中的地址写入指定快照的私有映射表中,所述私有映射表的优先级高于所述共享映射表;D424、修改指定快照的私有资源卷中相应地址的数据。
基于图13,上述步骤D421~D424的示意图如图14所示,当主机需要将第一快照中的数据“C”修改为“F”时,先将“C”复制到第一快照的私有资源卷,然后创建一个私有映射表,保存指向私有资源卷中的数据地址,再将私有资源卷中的“C”修改为“F”。此时,对于第一快照而言,同一数据就保存了两个地址,由于私有映射表的优先级较高,第一快照会认为私有映射表中的地址是真实地址。当然,如果后续主机还需要写第一快照,若需要修改的数据已拷贝到快照私有资源卷中,则可直接写入私有资源卷。此外,在执行上述步骤时,也可省略步骤D422,直接将要写入的数据写到快照私有资源卷中,然后将该写入的数据的地址保存入快照的私有映射表即可。
本实施例中采用共享映射表的方式创建快照的副本,快照与快照的副本不仅尽量共享公共数据,还尽量共享映射表信息,最大程度的节省了存储空间。
应当理解,实现本发明快照保护方法的软件可以存储于计算机可读介质中。该软件的在执行时,包括如下步骤获取对第一快照创建快照副本的指示;按照所述创建快照副本的指示,创建第一快照的副本;获取对第一快照和/或第一快照的副本的操作指示;按照所述操作指示,对第一快照和/或第一快照的副本执行相应的操作。所述的可读介质,如ROM/RAM、磁碟、光盘等。
下面对本发明实施例的快照保护装置进行详细说明。
实施例五、一种快照保护装置10,如图15所示,包括保护触发单元11,用于获取对第一快照创建快照副本的指示。
副本创建单元12,用于按照保护触发单元11获取的创建快照副本的指示,创建第一快照的副本。
操作触发单元13,用于获取对第一快照和/或第一快照的副本的操作指示。
操作执行单元14,用于按照操作触发单元13获取的操作指示,对第一快照和/或副本创建单元12创建的第一快照的副本执行相应的操作。
为更好的控制快照和快照副本的可操作性,操作触发单元13获取的操作指示中可包括,对指定快照的状态设置指示;相应的操作执行单元14中可包括状态控制单元141,用于在操作触发单元13获取到对指定快照的状态设置指示时,将指定快照的状态设置为可用或不可用。
本实施例快照保护装置可参照实施例一执行相应的快照保护方法。当副本创建单元12采用实施例一中提供的数据拷贝方式进行快照副本创建时,副本创建单元12可由数据拷贝单元来充当,用于对与第一快照的映射表对应的数据进行数据拷贝,以所述数据拷贝的内容作为第一快照的副本。
实施例六、一种快照保护装置20,如图16所示,包括保护触发单元21,用于获取对第一快照创建快照副本的指示。
充当副本创建单元的表复制单元22,用于按照保护触发单元21获取的创建快照副本的指示,复制第一快照的映射表并创建第二快照,以所述复制的映射表作为第二快照的映射表,以第二快照作为第一快照的副本。
操作触发单元23,用于获取对第一快照和/或第一快照的副本的操作指示。所获取的操作指示包括,生产卷发生数据修改时对各个快照的写前拷贝指示、对指定快照的修改指示、对指定快照的状态设置指示等。
操作执行单元24,用于按照操作触发单元23获取的操作指示,对第一快照和/或副本创建单元22创建的第一快照的副本执行相应的操作,具体可包括状态控制单元241,用于在操作触发单元23获取到对指定快照的状态设置指示时,将指定快照的状态设置为可用或不可用;写前拷贝单元242,用于在操作触发单元23获取到对各个快照的写前拷贝指示时,将需要修改的生产卷数据拷贝到快照共享资源卷;将第一快照的映射表和第二快照的映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址;数据修改单元243,用于在操作触发单元23获取到对指定快照的修改指示时,判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则直接修改指定快照的私有资源卷中相应地址的数据;若否,则将需要修改的数据拷贝到指定快照的私有资源卷,将指定快照的映射表中与该数据对应的地址,修改为该数据在指定快照的私有资源卷中的地址,修改指定快照的私有资源卷中相应地址的数据。
本实施例快照保护装置可参照实施例二执行相应的快照保护方法。
实施例七、一种快照保护装置30,如图17所示,包括保护触发单元31,用于获取对第一快照创建快照副本的指示。
副本创建单元32,包括表复制子单元321,用于按照保护触发单元3 1获取的创建快照副本的指示,创建第二快照并复制第一快照的映射表作为第二快照的映射表,以第二快照作为第一快照的副本;卷复制子单元322,用于在表复制子单元321复制第一快照的映射表时,判断所复制部分的映射信息是否指向第一快照的资源卷,若是,则将第一快照的资源卷中相应地址的数据复制到第二快照的资源卷中,并使第二快照的映射表中该部分的映射信息指向第二快照的资源卷中的相应地址。
操作触发单元33,用于获取对第一快照和/或第一快照的副本的操作指示。所获取的操作指示包括,生产卷发生数据修改时对各个快照的写前拷贝指示、对指定快照的状态设置指示等;操作执行单元34,用于按照操作触发单元33获取的操作指示,对第一快照和/或副本创建单元32创建的第一快照的副本执行相应的操作,具体可包括状态控制单元341,用于在操作触发单元33获取到对指定快照的状态设置指示时,将指定快照的状态设置为可用或不可用;写前拷贝单元342,用于在操作触发单元33获取到对各个快照的写前拷贝指示时,将需要修改的生产卷数据拷贝到各个快照的资源卷;将各个快照的映射表中与该数据对应的地址,修改为该数据在对应的快照的资源卷中的地址。
本实施例快照保护装置可参照实施例二执行相应的快照保护方法。
实施例八、一种快照保护装置40,如图18所示,包括保护触发单元41,用于获取对第一快照创建快照副本的指示。
充当副本创建单元的表共享单元42,用于按照保护触发单元41获取的创建快照副本的指示,创建第二快照,以第一快照的映射表作为第一快照和第二快照的共享映射表,以第二快照作为第一快照的副本。
操作触发单元43,用于获取对第一快照和/或第一快照的副本的操作指示。所获取的操作指示包括,生产卷发生数据修改时对各个快照的写前拷贝指示、对指定快照的修改指示、对指定快照的状态设置指示等。
操作执行单元44,用于按照操作触发单元43获取的操作指示,对第一快照和/或副本创建单元42创建的第一快照的副本执行相应的操作,具体可包括状态控制单元441,用于在操作触发单元43获取到对指定快照的状态设置指示时,将指定快照的状态设置为可用或不可用;写前拷贝单元442,用于在操作触发单元43获取到对各个快照的写前拷贝指示时,将需要修改的生产卷数据拷贝到快照共享资源卷;将所述共享映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
数据修改单元443,用于在操作触发单元43获取到对指定快照的修改指示时,判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则直接修改指定快照的私有资源卷中相应地址的数据;若否,则将需要修改的数据拷贝到指定快照的私有资源卷,将该数据在指定快照的私有资源卷中的地址写入指定快照的私有映射表中,所述私有映射表的优先级高于所述共享映射表,修改指定快照的私有资源卷中相应地址的数据。
本实施例快照保护装置可参照实施例四执行相应的快照保护方法。
应当理解的是,本发明实施例快照保护装置的副本创建单元可同时包括上述实施例五~八中的数据拷贝单元、表复制单元、表复制子单元、卷复制子单元、表共享单元,使得快照保护装置能够同时提供不同的副本创建方式,在需要创建快照副本时,可由用户选择实际采用的方式或按照某种规则由系统确定实际采用的方式。当然,若确定采用上述方式中的某方式创建了快照副本,则后续对该快照副本的操作应当按照对应的方式进行。
通过上述实施例可以看出,本发明实施例采用对快照创建快照副本,分别对快照和快照副本执行操作的方法;由于采用快照副本对快照数据进行备份,使得即使修改了快照数据,也可以通过快照副本来恢复快照时间点的数据,对快照提供了有效的保护;同时,基于快照和快照的若干副本,能够满足对同一时间点快照数据的并行操作要求。此外,在本发明实施例中还提供使快照副本和快照共享公共数据甚至共享映射表的方法,能够有效节省存储资源。
以上对本发明实施例所提供的快照保护方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种快照保护方法,其特征在于,包括获取对第一快照创建快照副本的指示;按照所述创建快照副本的指示,创建第一快照的副本;获取对第一快照和/或第一快照的副本的操作指示;按照所述操作指示,对第一快照和/或第一快照的副本执行相应的操作。
2.根据权利要求1所述的快照保护方法,其特征在于,所述创建第一快照的副本的步骤包括对与第一快照的映射表对应的数据进行数据拷贝,以所述数据拷贝的内容作为第一快照的副本。
3.根据权利要求1所述的快照保护方法,其特征在于,所述创建第一快照的副本的步骤包括复制第一快照的映射表并创建第二快照,以所述复制的映射表作为第二快照的映射表,以第二快照作为第一快照的副本。
4.根据权利要求3所述的快照保护方法,其特征在于,所述操作指示为生产卷发生数据修改时,对各个快照的写前拷贝指示;则对第一快照和/或第一快照的副本执行相应的操作的步骤具体包括将需要修改的生产卷数据拷贝到快照共享资源卷;将第一快照的映射表和第二快照的映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
5.根据权利要求3所述的快照保护方法,其特征在于,所述操作指示为对指定快照的修改指示;则对第一快照和/或第一快照的副本执行相应的操作的步骤具体包括判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则直接修改指定快照的私有资源卷中相应地址的数据;若否,则将需要修改的数据拷贝到指定快照的私有资源卷,将指定快照的映射表中与该数据对应的地址,修改为该数据在指定快照的私有资源卷中的地址,修改指定快照的私有资源卷中相应地址的数据。
6.根据权利要求1所述的快照保护方法,其特征在于,所述创建第一快照的副本的步骤包括创建第二快照并复制第一快照的映射表作为第二快照的映射表,以第二快照作为第一快照的副本;在复制第一快照的映射表时,判断所复制部分的映射信息是否指向第一快照的资源卷,若是,则将第一快照的资源卷中相应地址的数据复制到第二快照的资源卷中,并使第二快照的映射表中该部分的映射信息指向第二快照的资源卷中的相应地址。
7.根据权利要求6所述的快照保护方法,其特征在于,所述操作指示为生产卷发生数据修改时,对各个快照的写前拷贝指示;则对第一快照和/或第一快照的副本执行相应的操作的步骤具体包括将需要修改的生产卷数据拷贝到各个快照的资源卷;将各个快照的映射表中与该数据对应的地址,修改为该数据在对应的快照的资源卷中的地址。
8.根据权利要求1所述的快照保护方法,其特征在于,所述创建第一快照的副本的步骤包括创建第二快照,以第一快照的映射表作为第一快照和第二快照的共享映射表,以第二快照作为第一快照的副本。
9.根据权利要求8所述的快照保护方法,其特征在于,所述操作指示为生产卷发生数据修改时,对各个快照的写前拷贝指示,则对第一快照和/或第一快照的副本执行相应的操作的步骤具体包括将需要修改的生产卷数据拷贝到快照共享资源卷;将所述共享映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
10.根据权利要求8所述的快照保护方法,其特征在于,所述操作指示为对指定快照的修改指示,则对第一快照和/或第一快照的副本执行相应的操作的步骤具体包括判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则直接修改指定快照的私有资源卷中相应地址的数据;若否,则将需要修改的数据拷贝到指定快照的私有资源卷,将该数据在指定快照的私有资源卷中的地址写入指定快照的私有映射表中,所述私有映射表的优先级高于所述共享映射表,修改指定快照的私有资源卷中相应地址的数据。
11.根据权利要求3~10任意一项所述的快照保护方法,其特征在于,所述第一快照为另一快照的副本。
12.根据权利要求1~10任意一项所述的快照保护方法,其特征在于,所述操作指示为对指定快照的状态设置指示,则对第一快照和/或第一快照的副本执行相应的操作的步骤具体包括将指定快照的状态设置为可用或不可用。
13.一种快照保护装置,其特征在于,包括保护触发单元,用于获取对第一快照创建快照副本的指示;副本创建单元,用于按照所述创建快照副本的指示,创建第一快照的副本;操作触发单元,用于获取对第一快照和/或第一快照的副本的操作指示;操作执行单元,用于按照所述操作指示,对第一快照和/或第一快照的副本执行相应的操作。
14.根据权利要求13所述的快照保护装置,其特征在于,所述副本创建单元包括数据拷贝单元,用于对与第一快照的映射表对应的数据进行数据拷贝,以所述数据拷贝的内容作为第一快照的副本。
15.根据权利要求13所述的快照保护装置,其特征在于,所述副本创建单元包括表复制单元,用于复制第一快照的映射表并创建第二快照,以所述复制的映射表作为第二快照的映射表,以第二快照作为第一快照的副本。
16.根据权利要求15所述的快照保护装置,其特征在于,所述操作触发单元获取的操作指示包括,生产卷发生数据修改时对各个快照的写前拷贝指示;所述操作执行单元包括写前拷贝单元,用于在所述操作触发单元获取到对各个快照的写前拷贝指示时,将需要修改的生产卷数据拷贝到快照共享资源卷;将第一快照的映射表和第二快照的映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
17.根据权利要求15所述的快照保护装置,其特征在于,所述操作触发单元获取的操作指示包括,对指定快照的修改指示;所述操作执行单元包括数据修改单元,用于在所述操作触发单元获取到对指定快照的修改指示时,判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则直接修改指定快照的私有资源卷中相应地址的数据;若否,则将需要修改的数据拷贝到指定快照的私有资源卷,将指定快照的映射表中与该数据对应的地址,修改为该数据在指定快照的私有资源卷中的地址,修改指定快照的私有资源卷中相应地址的数据。
18.根据权利要求13所述的快照保护装置,其特征在于,所述副本创建单元包括表复制子单元,用于创建第二快照并复制第一快照的映射表作为第二快照的映射表,以第二快照作为第一快照的副本;卷复制子单元,用于在所述表复制子单元复制第一快照的映射表时,判断所复制部分的映射信息是否指向第一快照的资源卷,若是,则将第一快照的资源卷中相应地址的数据复制到第二快照的资源卷中,并使第二快照的映射表中该部分的映射信息指向第二快照的资源卷中的相应地址。
19.根据权利要求18所述的快照保护装置,其特征在于,所述操作触发单元获取的操作指示包括,生产卷发生数据修改时对各个快照的写前拷贝指示;所述操作执行单元包括写前拷贝单元,用于在所述操作触发单元获取到对各个快照的写前拷贝指示时,将需要修改的生产卷数据拷贝到各个快照的资源卷;将各个快照的映射表中与该数据对应的地址,修改为该数据在对应的快照的资源卷中的地址。
20.根据权利要求13所述的快照保护装置,其特征在于,所述副本创建单元包括表共享单元,用于创建第二快照,以第一快照的映射表作为第一快照和第二快照的共享映射表,以第二快照作为第一快照的副本。
21.根据权利要求20所述的快照保护装置,其特征在于,所述操作触发单元获取的操作指示包括,生产卷发生数据修改时对各个快照的写前拷贝指示;所述操作执行单元包括写前拷贝单元,用于在所述操作触发单元获取到对各个快照的写前拷贝指示时,将需要修改的生产卷数据拷贝到快照共享资源卷;将所述共享映射表中与该数据对应的地址,修改为该数据在所述快照共享资源卷中的地址。
22.根据权利要求20所述的快照保护装置,其特征在于,所述操作触发单元获取的操作指示包括,为对指定快照的修改指示;所述操作执行单元包括数据修改单元,用于在所述操作触发单元获取到对指定快照的修改指示时,判断需要修改的数据是否已拷贝到指定快照的私有资源卷中,若是,则直接修改指定快照的私有资源卷中相应地址的数据;若否,则将需要修改的数据拷贝到指定快照的私有资源卷,将该数据在指定快照的私有资源卷中的地址写入指定快照的私有映射表中,所述私有映射表的优先级高于所述共享映射表,修改指定快照的私有资源卷中相应地址的数据。
23.根据权利要求13~22任意一项所述的快照保护装置,其特征在于,所述操作触发单元获取的操作指示包括,对指定快照的状态设置指示;所述操作执行单元包括状态控制单元,用于在所述操作触发单元获取到对指定快照的状态设置指示时,将指定快照的状态设置为可用或不可用。
全文摘要
本发明公开了一种快照保护方法,对快照创建快照副本,分别对快照和快照副本执行操作。本发明还提供相应的快照保护装置。本发明由于采用快照副本对快照数据进行备份,使得即使修改了快照数据,也可以通过快照副本来恢复快照时间点的数据,对快照提供了有效的保护;同时,基于快照和快照的若干副本,能够满足对同一时间点快照数据的并行操作要求。
文档编号G06F11/14GK101093459SQ20071013036
公开日2007年12月26日 申请日期2007年7月18日 优先权日2007年7月18日
发明者周升, 张鹏, 张国彬, 欧阳戟 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1