一种数据恢复、快照创建、快照删除方法及装置与流程

文档序号:12824585阅读:162来源:国知局
一种数据恢复、快照创建、快照删除方法及装置与流程
本发明涉及备份技术,尤其涉及一种数据恢复、快照创建、快照删除方法及装置。
背景技术
:随着云计算技术的发展,存储服务作为基础设施即服务(iaas,infrastructureasaservice)中的核心服务应用也越来越广泛,其中,块存储作为iaas中的一大类。目前,块存储的数据备份和恢复主要是通过备份和快照这两种技术来实现的。但是,备份技术需要对所有数据进行备份,就存在备份数据占用空间大,造成资源浪费,那么,为了节约资源,可以采用快照技术来进行数据的备份和恢复,但是,由于每次保存的是与前一次快照的增量,所以,快照之间存在先后依赖关系,当一个快照被删除后,其后序的所有快照数据都将无法恢复。所以,现有技术中并不存在一种合理的数据恢复方法。技术实现要素:有鉴于此,本发明实施例期望提供一种数据恢复、快照创建、快照删除方法及装置,以提高数据恢复的可靠性,方便用户操作,提供良好的用户体验。为达到上述目的,本发明的技术方案是这样实现的:第一方面,本发明实施例提供了一种数据恢复方法,包括:接收快照恢复指令,其中,所述快照恢复指令用于指示基于第一快照节点恢复卷数据,在确定所述第一快照节点对应的第一备份节点后,根据所述第一备份节点,恢复所述卷数据,其中,所述第一备份节点是由复制所述第一快照节点的快照数据形成的。进一步地,所述确定所述第一快照节点对应的第一备份节点,包括:根据预设的快照节点与备份节点的对应关系,确定所述第一备份节点。进一步地,所述根据所述第一备份节点,恢复所述卷数据,包括:将所述第一备份节点的备份数据与所述第一快照节点的所有前序快照节点的快照数据叠加,恢复所述卷数据。第二方面,本发明实施例提供了一种快照创建方法,包括:接收快照创建指令,其中,所述快照创建指令用于指示创建第一快照节点,创建所述第一快照节点,并复制所述第一快照节点的快照数据形成第一备份节点,至少将所述第一快照节点以及所述第一备份节点关联。进一步地,所述至少将所述第一快照节点以及所述第一备份节点关联,包括:将所述第一快照节点、所述第一备份节点以及所述第一快照节点对应的卷关联。进一步地,在所述创建所述第一快照节点,并复制所述第一快照节点的数据形成第一备份节点之后,包括:将所述第一快照节点标记为最近一次备份的快照节点。第三方面,本发明实施例提供了一种快照删除方法,包括:接收快照删除指令,其中,所述快照删除指令用于指示删除第一快照节点,判断所述第一快照节点是否为最近一次备份的快照节点,获得判断结果,删除第一快照节点,并根据所述判断结果,对第一备份节点进行相应处理,其中,所述第一备份节点是由复制所述第一快照节点的快照数据形成的。进一步地,所述删除第一快照节点,并根据所述判断结果,对第一备份节点进行相应处理,包括:当所述第一快照节点为所述最近一次备份的快照节点,判断所述第一快照节点对应的卷是否存在其他备份节点,当所述第一快照节点对应的卷存在所述其他备份节点时,删除所述第一备份节点以及所述第一快照节点,当所述第一快照节点对应的卷不存在所述其他备份节点时,删除所述第一备份节点、所述第一快照节点以及删除所述第一快照节点的前序快照节点。进一步地,所述删除第一快照节点,并根据所述判断结果,对第一备份节 点进行相应处理,包括:当所述第一快照节点不是所述最近一次备份的快照节点,判断所述第一快照节点是否存在子节点,当所述第一快照节点存在子节点时,删除所述第一快照节点,保留所述第一备份节点,当所述第一快照节点不存在子节点时,删除所述第一快照节点以及所述第一备份节点。进一步地,所述删除所述第一快照节点以及所述第一备份节点,包括:判断所述第一快照节点的父节点是否存在其他子节点,当所述父节点存在所述其他子节点时,删除所述第一备份节点、所述第一快照节点,以及所述第一快照节点的父节点。第四方面,本发明实施例提供了一种数据恢复装置,包括:第一接收模块,用于接收快照恢复指令,其中,所述快照恢复指令用于指示基于第一快照节点恢复卷数据,恢复模块,用于在确定所述第一快照节点对应的第一备份节点后,根据所述第一备份节点,恢复所述卷数据,其中,所述第一备份节点是由复制所述第一快照节点的快照数据形成的。进一步地,所述恢复模块具体用于:根据预设的快照节点与备份节点的对应关系,确定所述第一备份节点。进一步地,所述恢复模块具体用于:将所述第一备份节点的备份数据与所述第一快照节点的所有前序快照节点的快照数据叠加,恢复所述卷数据。第五方面,本发明实施例提供了一种快照创建装置,包括:第二接收模块,用于接收快照创建指令,其中,所述快照创建指令用于指示创建第一快照节点,创建模块,用于创建所述第一快照节点,并复制所述第一快照节点的快照数据形成第一备份节点,关联模块,用于至少将所述第一快照节点以及所述第一备份节点关联。进一步地,所述关联模块具体用于:将所述第一快照节点、所述当前备份节点以及所述第一快照节点对应的卷相关联。进一步地,所述关联模块具体用于:在创建所述第一快照节点,并复制所述第一快照节点的数据形成第一备份节点之后,将所述第一快照节点标记为最近一次备份的快照节点。第六方面,本发明实施例提供了一种快照删除装置,包括:第三接收模块,用于接收快照删除指令,其中,所述快照删除指令用于指示删除第一快照节点,判断模块,用于判断所述第一快照节点是否为最近一次备份的快照节点,获得判断结果,删除模块,用于删除第一快照节点,并根据所述判断结果,对第一备份节点进行相应处理,其中,所述第一备份节点是由复制所述第一快照节点的快照数据形成的。进一步地,所述删除模块包括:第一判断子模块,用于当所述第一快照节点为所述最近一次备份的快照节点,判断所述第一快照节点对应的卷是否存在其他备份节点,第一删除子模块,用于当所述第一快照节点对应的卷存在所述其他备份节点时,删除所述第一备份节点以及所述第一快照节点,第二删除子模块,用于当所述第一快照节点对应的卷不存在所述其他备份节点时,删除所述第一备份节点、所述第一快照节点以及删除所述第一快照节点的前序快照节点。进一步地,所述删除模块还包括:第二判断子模块,用于当所述第一快照节点不是所述最近一次备份的快照节点,判断所述第一快照节点是否存在子节点,第三删除子模块,用于当所述第一快照节点存在子节点时,删除所述第一快照节点,保留所述第一备份节点,第四删除子模块,用于当所述第一快照节点不存在子节点时,删除所述第一快照节点以及所述第一备份节点。进一步地,所述四删除子模块,具体用于判断所述第一快照节点的父节点是否存在其他子节点;当所述第一快照节点的父节点存在所述其他子节点时,删除所述第一备份节点、所述第一快照节点以及所述父节点。本发明实施例所提供的数据恢复方法中,在接收到用于指示基于第一快照节点恢复卷数据的快照恢复指令之后,确定第一快照节点对应的第一备份节点,并在此后,根据第一备份节点,恢复卷数据,这里,第一备份节点是由复制第一快照节点的快照数据形成的,也就是说,通过对第一快照节点的复制得到第一备份节点,那么,在第一快照节点被删除了的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的 用户体验。附图说明图1为本发明实施例中的数据恢复方法的流程示意图;图2为本发明实施例中的快照节点之间关系的示意图;图3为本发明实施例中的快照创建方法的流程示意图;图4为本发明实施例中的快照删除方法的流程示意图;图5为本发明实施例中的数据恢复装置的结构示意图;图6为本发明实施例中的快照创建装置的结构示意图;图7为本发明实施例中的快照删除装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。本发明实施例提供一种数据恢复方法,应用于数据恢复装置中。图1为本发明实施例中的数据恢复方法的流程示意图,如图1所示,该方法包括:s101:接收快照恢复指令;其中,快照恢复指令用于指示基于第一快照节点恢复卷数据;s102:在确定第一快照节点对应的第一备份节点后,根据第一备份节点,恢复卷数据。这里,上述卷包括快照节点和备份节点,备份节点是由复制对应的快照节点的快照数据形成的,比如第一备份节点就是复制第一快照节点的快照数据形成的。进一步地,上述备份节点除了备份数据之外,还用于包括备份数据的信息,如备份数据编码,也就是该备份节点的节点编码和备份数据状态等;上述快照节点包括每次进行快照操作时的快照数据以及快照数据对应的编码,也就是该快照节点的节点编码,还有该快照节点的父节点的节点编码以及快照数据的状 态等,当然,上述备份节点和快照节点还可以包括其他信息,本发明不做具体限定。在具体实施过程中,s102可以包括:根据预设的快照节点与备份节点的对应关系,确定第一备份节点;需要说明的是,上述卷的快照节点和备份节点是相互对应的关系,所以,根据预设的快照节点与备份节点的对应关系可以确定出第一快照节点对应的第一备份节点,最终通过第一备份节点达到恢复卷数据的目的。在另一种实施例中,s102可以包括:将第一备份节点的备份数据与第一快照节点的所有前序快照节点的快照数据叠加,恢复卷数据。图2为本发明实施例中的快照节点之间关系的示意图,如图2所示,该快照节点之间关系还可以通过表1、表2以及表3来表示,其中,表1为快照节点编码之间的关系,表2为备份节点编码(bn,backupnode)、快照节点编码(sn,snapshotnode)以及卷编码之间的关系,表3为卷编码对应的最近一次快照节点编码。举例来说,当接收到快照恢复指令,快照恢复指令用于指示基于快照节点a2恢复卷数据,则通过查找表2确定a2对应的备份节点为bn2,则根据bn2的备份数据与a2的所有前序快照节点a1、a0的快照数据进行叠加,对卷vol0进行卷数据恢复,至此,便完成了基于a2的卷数据恢复操作。sn编码父sn编码a0nulla1a0a2a1b1a1b2b1c1a1表1bn编码对应sn编码对应卷编码bn0a0vol0bn1a1vol0bn2a2vol0bn3b1vol0bn4b2vol0bn5c1vol0表2卷编码最近一次备份的sn编码vol0c1表3上述第一备份节点的备份数据是复制第一快照节点的快照数据得到的,本实施例中,可以通过第一备份节点与第一快照节点的所有前序快照节点的快照数据叠加就可以恢复卷数据,不再仅仅依赖于快照节点之间的依赖关系,解决了在用户误将第一快照节点删除的情况下,不能进行卷数据恢复的技术问题,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。在本发明实施例中,通过对第一快照节点的复制得到第一备份节点,那么,在第一快照节点被删除了的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。基于同一发明构思,本发明实施例提供一种快照创建方法,应用于快照创建装置。图3为本发明实施例中的快照创建方法的流程示意图,如图3所示,该方法包括:s301:接收快照创建指令;其中,快照创建指令用于指示创建第一快照节点;s302:创建第一快照节点,并复制第一快照节点的快照数据形成第一备份 节点;这里,上述卷包括快照节点和备份节点,备份节点是由复制对应的快照节点的快照数据形成的,比如第一备份节点就是复制第一快照节点的快照数据形成的。进一步地,上述备份节点除了备份数据之外,还用于包括备份数据的信息,如备份数据编码,也就是该备份节点的节点编码和备份数据状态等;上述快照节点包括每次进行快照操作时的快照数据以及快照数据对应的编码,也就是该快照节点的节点编码,还有该快照节点的父节点的节点编码以及快照数据的状态等,当然,上述备份节点和快照节点还可以包括其他信息,本发明不做具体限定。s303:至少将第一快照节点以及第一备份节点关联。在另一种实施例中,s303还可以包括:将第一快照节点、第一备份节点以及第一快照节点对应的卷关联;具体地,将第一快照节点编码、第一备份节点编码以及第一快照节点对应的卷编码关联,使得通过任意一个编码即可找到对应的其他编码,将同一个卷的备份节点与快照节点关联起来。在另一种实施例中,在s302之后,该方法还可以包括:将第一快照节点标记为最近一次备份的快照节点;举例来说,在接收快照创建指令,快照创建指令用于指示创建第一快照节点,首先查找表2判断该第一快照节点是否为首次创建的备份节点,当表2中不存在备份节点时,则说明第一快照节点为首次创建的备份节点,则先创建第一快照节点a0,并复制第一快照节点a0的快照数据形成第一备份节点bn0,最后将第一快照节点a0、第一备份节点bn0以及卷vol0关联,并将表3中的最近一次备份的快照节点编码标记为a0;当表2中存在备份节点时,则说明第一快照节点不是首次创建的备份节点,则先创建第一快照节点a1,并复制第一快照节点a1的快照数据形成第一备份节点bn1,最后将第一快照节点a1、第一备份节点bn1以及卷vol0关联,并将表3中的最近一次备份的快照节点 编码标记为a1,至此,便完成了快照创建操作。这里,将第一快照节点标记为最近一次备份的快照节点是为了在进行数据删除时方便判断快照节点,实时地记录快照节点、备份节点以及快照节点与备份节点之间的关系,有利于对备份节点和快照节点进行管理,提高快存储的效率,提高用户的体验度。在本发明实施中,在快照创建的过程中,通过对第一快照节点的复制得到第一备份节点,并将第一快照节点与第一备份节点关联,那么,在第一快照节点被删除了的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。基于同一发明构思,本发明实施例提供一种快照删除方法,应用于快照删除装置中。图4为本发明实施例中的快照删除方法的流程示意图,如图4所示,该方法包括:s401:接收快照删除指令;其中,快照删除指令用于指示删除第一快照节点;s402:判断第一快照节点是否为最近一次备份的快照节点,获得判断结果;这里,上述卷包括快照节点和备份节点,备份节点是由复制对应的快照节点的快照数据形成的,比如第一备份节点就是复制第一快照节点的快照数据形成的。进一步地,上述备份节点除了备份数据之外,还用于包括备份数据的信息,如备份数据编码,也就是该备份节点的节点编码和备份数据状态等;上述快照节点包括每次进行快照操作时的快照数据以及快照数据对应的编码,也就是该快照节点的节点编码,还有该快照节点的父节点的节点编码以及快照数据的状态等,当然,上述备份节点和快照节点还可以包括其他信息,本发明不做具体限定。其中,判断第一快照节点是否为最近一次备份的快照节点是为了获取第一快照节点的编码,以确定如何进行快照节点与备份节点的删除,从而实现释放更多的存储空间。s403:删除第一快照节点,并根据判断结果,对第一备份节点进行相应处理;其中,第一备份节点是由复制第一快照节点的快照数据形成的。假设上述得到的判断结果为第一快照节点为最近一次备份的快照节点时,还需要进一步判断上述第一快照节点对应的卷是否存在其他备份节点,在另一实施例中,s403中还可以包括:当第一快照节点为最近一次备份的快照节点,判断第一快照节点对应的卷是否存在其他备份节点;当第一快照节点对应的卷存在其他备份节点时,删除第一备份节点以及第一快照节点;其中,当第一快照节点为最近一次备份的快照节点,且第一快照节点对应的卷存在其他备份节点时,说明该卷其他的备份节点对于用户来说还需要进行数据恢复,所以只需要删除第一备份节点和第一快照节点即可。当第一快照节点对应的卷不存在其他备份节点时,删除第一备份节点、第一快照节点以及删除第一快照节点的前序快照节点。其中,当第一快照节点为最近一次备份的快照节点,且第一快照节点对应的卷不存在其他备份节点时,说明该卷的快照节点并没有进行备份,也就是说,第一快照节点的前序快照节点是冗余数据,所以删除第一备份节点、第一快照节点以及删除第一快照节点的前序快照节点。假设上述得到的判断结果为第一快照节点不是最近一次备份的快照节点时,在具体实施过程中,s403中还可以包括:当第一快照节点不是最近一次备份的快照节点,判断第一快照节点是否存在子节点;当第一快照节点存在子节点时,删除第一快照节点,保留第一备份节点;其中,当第一快照节点不是最近一次备份的快照节点,且第一快照节点存在子节点时,说明该卷在恢复子节点时,用户需要利用第一备份节点对数据进行恢复,所以只需要删除第一快照节点即可。当第一快照节点不存在子节点时,删除第一快照节点以及第一备份节点。在具体实施过程中,删除第一快照节点以及第一备份节点,包括:判断第一快照节点的父节点是否存在其他子节点;当第一快照节点的父节点不存在其他子节点时,删除第一备份节点、第一快照节点,以及第一快照节点的父节点;其中,当第一快照节点不是最近一次备份的快照节点,且第一快照节点存在子节点,说明该卷的第一快照节点的父节点还需要进行数据恢复,所以不对第一快照节点的父节点进行操作;当第一快照节点不是最近一次备份的快照节点,且第一快照节点不存在子节点,说明该卷的第一快照节点不再需要进行数据恢复,且第一快照节点的父节点不存在其他子节点时,也就是说,第一快照节点的父节点也不再需要进行数据恢复,所以删除第一备份节点和第一快照节点,且删除第一快照节点的父节点。举例来说,在接收到快照删除指令,快照删除指令用于指示删除第一快照节点,首先通过表3判断第一快照节点是否为最近一次备份的快照节点,获得判断结果,当指示删除第一快照节点为c1时,在继续判断c1对应卷是否存在其他备份节点,通过查询表2可知,c1对应卷存在其他备份节点,则删除第一备份节点bn5和第一快照节点c1;当指示删除第一快照节点为a2时,继续判断a2是否子节点,通过表1可知,a2不存在子节点,在继续判断a2的父节点a1是否存在其他子节点,通过表1可知,a1还存在其他子节点b1和c1,则删除第一快照节点a2以及第一备份节点bn2,至此,便完成了快照删除操作。在本发明实施中,在快照删除的过程中,在删除第一快照节点的同时,判断通过对第一快照节点的复制得到的第一备份节点是否需要进行删除以释放存储空间,那么,在需要删除第一快照节点对第一备份节点进行相应处理,另外,在仅仅删除了第一快照数据的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。基于同一发明构思,本发明实施例提供一种数据恢复装置,图5为本发明 实施例中的数据恢复装置的结构示意图,如图5所示,该装置包括:第一接收模块51和恢复模块52;其中,第一接收模块51,用于接收快照恢复指令,其中,快照恢复指令用于指示基于第一快照节点恢复卷数据;恢复模块52,用于在确定第一快照节点对应的第一备份节点后,根据第一备份节点,恢复卷数据,其中,第一备份节点是由复制第一快照节点的快照数据形成的。这里,上述卷包括快照节点和备份节点,备份节点是由复制对应的快照节点的快照数据形成的,比如第一备份节点就是复制第一快照节点的快照数据形成的。进一步地,上述备份节点除了备份数据之外,还用于包括备份数据的信息,如备份数据编码,也就是该备份节点的节点编码和备份数据状态等;上述快照节点包括每次进行快照操作时的快照数据以及快照数据对应的编码,也就是该快照节点的节点编码,还有该快照节点的父节点的节点编码以及快照数据的状态等,当然,上述备份节点和快照节点还可以包括其他信息,本发明不做具体限定。在另一实施例中,上述恢复模块52还可以用于:根据预设的快照节点与备份节点的对应关系,确定第一备份节点;需要说明的是,上述卷的快照节点和备份节点是相互对应的关系,所以,根据预设的快照节点与备份节点的对应关系可以确定出第一快照节点对应的第一备份节点,最终通过第一备份节点达到恢复卷数据的目的。在另一实施例中,上述恢复模块52还可以用于:将第一备份节点的备份数据与第一快照节点的所有前序快照节点的快照数据叠加,恢复卷数据。举例来说,当通过第一接收模块51接收到快照恢复指令,快照恢复指令用于指示基于快照节点a2恢复卷数据,则通过查找表2确定a2对应的备份节点为bn2,则根据bn2的备份数据与a2的所有快照节点a1、a0的快照数据进行叠加,对卷vol0进行卷数据恢复,至此,便完成了基于a2的卷数据恢复操作。上述第一备份节点的备份数据是复制第一快照节点的快照数据得到的,本实施例中,可以通过第一备份节点与第一快照节点的所有前序快照节点的快照数据叠加就可以恢复卷数据,不再仅仅依赖于快照节点之间的依赖关系,解决了在用户误将第一快照节点删除的情况下,不能进行卷数据恢复的技术问题,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。在本发明实施例中,数据恢复装置通过对第一快照节点的复制得到第一备份节点,那么,在第一快照节点被删除了的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。基于同一发明构思,本发明实施例提供一种快照创建装置,图6为本发明实施例中的快照创建装置的结构示意图,如图6所示,该装置包括:第二接收模块61、创建模块62和关联模块63;其中,第二接收模块61,用于接收快照创建指令,其中,快照创建指令用于指示创建第一快照节点;创建模块62,用于创建第一快照节点,并复制第一快照节点的快照数据形成第一备份节点;这里,上述卷包括快照节点和备份节点,备份节点是由复制对应的快照节点的快照数据形成的,比如第一备份节点就是复制第一快照节点的快照数据形成的。进一步地,上述备份节点除了备份数据之外,还用于包括备份数据的信息,如备份数据编码,也就是该备份节点的节点编码和备份数据状态等;上述快照节点包括每次进行快照操作时的快照数据以及快照数据对应的编码,也就是该快照节点的节点编码,还有该快照节点的父节点的节点编码以及快照数据的状态等,当然,上述备份节点和快照节点还可以包括其他信息,本发明不做具体限定。关联模块63,用于至少将第一快照节点以及第一备份节点关联。在另一实施例中,上述关联模块63具体还可以用于:将第一快照节点、当前备份节点以及第一快照节点对应的卷相关联;具体地,将第一快照节点编码、第一备份节点编码以及第一快照节点对应的卷编码关联,使得通过任意一个编码即可找到对应的其他编码,将同一个卷的备份节点与快照节点关联起来。在另一实施例中,上述关联模块63具体还可以用于:在创建第一快照节点,并复制第一快照节点的数据形成第一备份节点之后,将第一快照节点标记为最近一次备份的快照节点。举例来说,在第二接收模块61接收快照创建指令,快照创建指令用于指示创建第一快照节点,首先查找表2判断该第一快照节点是否为首次创建的备份节点,当表2中不存在备份节点时,则说明第一快照节点为首次创建的备份节点,则先创建第一快照节点a0,并复制第一快照节点a0的快照数据形成第一备份节点bn0,最后将第一快照节点a0、第一备份节点bn0以及卷vol0关联,并将表3中的最近一次备份的快照节点编码标记为a0;当表2中存在备份节点时,则说明第一快照节点不是首次创建的备份节点,则先创建第一快照节点a1,并复制第一快照节点a1的快照数据形成第一备份节点bn1,最后将第一快照节点a1、第一备份节点bn1以及卷vol0关联,并将表3中的最近一次备份的快照节点编码标记为a1,至此,便完成了快照创建操作。这里,将第一快照节点标记为最近一次备份的快照节点是为了在进行数据删除时方便判断快照节点,实时地记录快照节点、备份节点以及快照节点与备份节点之间的关系,有利于对备份节点和快照节点进行管理,提高快存储的效率,提高用户的体验度。在本发明实施中,快照创建装置通过对第一快照节点的复制得到第一备份节点,并将第一快照节点与第一备份节点关联,那么,在第一快照节点被删除了的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。基于同一发明构思,本发明实施例提供一种快照删除装置,图7为本发明实施例中的快照删除装置的结构示意图,如图7所示,该装置包括:第三接收模块71、判断模块72和删除模块73;其中,第三接收模块71,用于接收快照删除指令,其中,快照删除指令用于指示删除第一快照节点;判断模块72,用于判断第一快照节点是否为最近一次备份的快照节点,获得判断结果;这里,上述卷包括快照节点和备份节点,备份节点是由复制对应的快照节点的快照数据形成的,比如第一备份节点就是复制第一快照节点的快照数据形成的。进一步地,上述备份节点除了备份数据之外,还用于包括备份数据的信息,如备份数据编码,也就是该备份节点的节点编码和备份数据状态等;上述快照节点包括每次进行快照操作时的快照数据以及快照数据对应的编码,也就是该快照节点的节点编码,还有该快照节点的父节点的节点编码以及快照数据的状态等,当然,上述备份节点和快照节点还可以包括其他信息,本发明不做具体限定。其中,上述通过判断模块72判断第一快照节点是否为最近一次备份的快照节点是为了获取第一快照节点的编码,以确定如何进行快照节点与备份节点的删除,从而实现释放更多的存储空间。删除模块73,用于删除第一快照节点,并根据判断结果,对第一备份节点进行相应处理;其中,第一备份节点是由复制第一快照节点的快照数据形成的。假设上述得到的判断结果为第一快照节点为最近一次备份的快照节点时,还需要进一步判断上述第一快照节点对应的卷是否存在其他备份节点,在另一实施例中,上述删除模块72具体还可以包括:第一判断子模块、第一删除子模块和第二删除子模块;其中,第一判断子模块,用于当第一快照节点为最近一次备份的快照节点,判断第一快照节点对应的卷是否存在其他备份节点;第一删除子模块,用于当第一快照节点对应的卷存在其他备份节点时,删除第一备份节点和第一快照节点;其中,在第一删除子模块中,当第一快照节点为最近一次备份的快照节点, 且第一快照节点对应的卷存在其他备份节点时,说明该卷其他的备份节点对于用户来说还需要进行数据恢复,所以只需要删除第一备份节点和第一快照节点即可。第二删除子模块,用于当第一快照节点对应的卷不存在其他备份节点时,删除第一备份节点、第一快照节点以及删除第一快照节点的前序快照节点。其中,在第二删除子模块中,当第一快照节点为最近一次备份的快照节点,且第一快照节点对应的卷不存在其他备份节点时,说明该卷的快照节点并没有进行备份,也就是说,第一快照节点的前序快照节点是冗余数据,所以删除第一备份节点、第一快照节点以及删除第一快照节点的前序快照节点。假设上述得到的判断结果为第一快照节点不是最近一次备份的快照节点时,在另一实施例中,上述删除模块72具体还可以包括:第二判断子模块、第三删除子模块和第四删除子模块;其中,第二判断子模块,用于当第一快照节点不是最近一次备份的快照节点,判断第一快照节点是否存在子节点;第三删除子模块,用于当第一快照节点存在子节点,删除第一快照节点,保留第一备份节点;其中,在第三删除子模块中,当第一快照节点不是最近一次备份的快照节点,且当第一快照节点存在子节点时,说明该卷在恢复子快照节点时,用户需要利用第一备份节点对数据进行恢复,所以只需要删除第一快照节点即可。第四删除子模块,用于当第一快照节点不存在子节点时,删除第一快照节点以及第一备份节点。在另一实施例中,上述四删除子模块具体还用于:判断第一快照节点的父节点是否存在其他子节点,当第一快照节点的父节点不存在其他子节点时,删除第一备份节点、第一快照节点以及删除第一快照节点的父节点;其中,在上述四删除子模块中,当第一快照节点不是最近一次备份的快照节点,且第一快照节点存在子节点,说明该卷的第一快照节点的父节点还需要进行数据恢复,所以不对第一快照节点的父节点进行操作;当第一快照节点不 是最近一次备份的快照节点,且第一快照节点不存在子节点,说明该卷的第一快照节点不再需要进行数据恢复,且第一快照节点的父节点不存在其他子节点时,也就是说,第一快照节点的父节点也不再需要进行数据恢复,所以删除第一备份节点和第一快照节点,且删除第一快照节点的父节点。举例来说,在第三接收模块71接收到快照删除指令,快照删除指令用于指示删除第一快照节点,首先通过表3判断第一快照节点是否为最近一次备份的快照节点,获得判断结果,当指示删除第一快照节点为c1时,在继续判断c1对应卷是否存在其他备份节点,通过查询表2可知,c1对应卷存在其他备份节点,则删除第一备份节点bn5和第一快照节点c1;当指示删除第一快照节点为a2时,继续判断a2是否子节点,通过表1可知,a2不存在子节点,在继续判断a2的父节点a1是否存在其他子节点,通过表1可知,a1还存在其他子节点b1和c1,则删除第一快照节点a2以及第一备份节点bn2,至此,便完成了快照删除操作。在本发明实施中,快照删除装置在删除第一快照节点的同时,判断通过对第一快照节点的复制得到的第一备份节点是否需要进行删除以释放存储空间,那么,在需要删除第一快照节点对第一备份节点进行相应处理,另外,在仅仅删除了第一快照数据的情况下,还是可以利用第一备份节点恢复卷数据,提高了数据恢复的可靠性,方便用户操作,提供了良好的用户体验。这里需要指出的是:以上装置实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。这里需要指出的是:应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合 在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储 介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(readonlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1