1.一种用于在计算机系统处建立虚拟机参考点的计算机实现的方法,所述计算机系统包括至少一个处理器,所述方法包括:
维持多个数据存储标识符,所述多个数据存储标识符标识与虚拟机相对应的数据存储装置的多个数据块中的经改变的数据块;
访问稳定虚拟机检查点,所述稳定虚拟机检查点包括虚拟机在一时间点处的可恢复映像并且存储所述数据存储装置的所述多个数据块中的至少一个数据块在所述时间点处存在时的数据的表示;
将所述虚拟机检查点转换成包括所述虚拟机在所述时间点处的表示的虚拟机参考点,其中虚拟机参考点信息是连同所述虚拟机可转移的,使得如果所述虚拟机被移动到不同的计算系统,则由所述虚拟机参考点标识的任何数据是可恢复的,转换包括:
查询所述数据存储装置以确定与所述时间点处的所述虚拟机检查点的所述至少一个数据块相对应的至少一个数据存储标识符;
将所确定的所述至少一个数据存储标识符存储为所述虚拟机参考点的一部分;以及
从所述虚拟机检查点释放所述至少一个数据块的所述数据的所述表示;以及
在将所述虚拟机检查点转换成所述虚拟机参考点之后,使用所述虚拟机参考点来标识自所述时间点以来所述数据存储装置的所述多个数据块中的一个或多个改变。
2.根据权利要求1所述的方法,还包括:
建立所述虚拟机内的稳定非改变状态,所述稳定状态与所述虚拟机参考点相关联;
访问一个或多个之前生成的虚拟机参考点以便标识当前稳定状态与所选过去稳定时间点之间的虚拟机状态中的一个或多个差异;以及
使用由所存储的数据存储标识符和当前数据存储标识符标识的数据,来执行至少一个操作。
3.根据权利要求2所述的方法,其中所述至少一个操作包括以下一项或多项:备份数据、恢复数据、复制数据、或者向用户或其他指定实体提供数据。
4.根据权利要求2所述的方法,其中由所存储的数据存储标识符和当前数据存储标识符标识的数据与之前生成的检查点组合。
5.根据权利要求2所述的方法,其中所述稳定状态通过执行以下中的至少一项而被建立:在所述虚拟机内缓存随后的数据改变、实现用于所述虚拟机内的随后数据改变的临时写时复制、或者针对包括底层数据的一个或多个部分的所述虚拟机生成检查点。
6.根据权利要求1所述的方法,还包括提供一个或多个应用程序接口api,所述api允许多个不同的第三方将数据存储标识符存储为虚拟机参考点。
7.根据权利要求6所述的方法,其中所述多个第三方被支持以通过使用所提供的所述一个或多个api来同时执行数据备份。
8.根据权利要求1所述的方法,其中所述数据存储标识符包括序列号或位图中的至少一项。
9.根据权利要求1所述的方法,其中所述虚拟机参考点包括元数据,所述元数据包括所述至少一个数据存储标识符,使得所述虚拟机参考点是轻量的并且没有包括数据存储、存储器或者虚拟机状态的所述虚拟机检查点的检查点数据。
10.根据权利要求9所述的方法,其中包括数据存储、存储器以及虚拟机状态的虚拟机检查点被转换成仅包括元数据的虚拟机参考点。
11.根据权利要求1所述的方法,其中数据支持的检查点使用在所述虚拟机参考点和未来时间点之间的一个或多个经标识的改变而被重构。
12.一种计算机系统,包括:
一个或多个处理器;以及
一个或多个计算机可读介质,在其上存储有计算机可执行指令,所述计算机可执行指令由所述一个或多个处理器可执行以使所述计算机系统建立虚拟机参考点,所述计算机可执行指令包括可执行以使所述计算机系统至少执行以下的指令:
维持多个数据存储标识符,所述多个数据存储标识符标识与虚拟机相对应的数据存储装置的多个数据块中的经改变的数据块;
访问稳定虚拟机检查点,所述稳定虚拟机检查点包括虚拟机在一时间点处的可恢复映像并且存储所述数据存储装置的所述多个数据块中的至少一个数据块在所述时间点处存在时的数据的表示;
将所述虚拟机检查点转换成包括所述虚拟机在所述时间点处的表示的虚拟机参考点,其中虚拟机参考点信息是连同所述虚拟机可转移的,使得如果所述虚拟机被移动到不同的计算系统,则由所述虚拟机参考点标识的任何数据是可恢复的,转换包括:
查询所述数据存储装置以确定与所述时间点处的所述虚拟机检查点的所述至少一个数据块相对应的至少一个数据存储标识符;
将所确定的所述至少一个数据存储标识符存储为所述虚拟机参考点的一部分;以及
从所述虚拟机检查点释放所述至少一个数据块的所述数据的所述表示;以及
在将所述虚拟机检查点转换成所述虚拟机参考点之后,使用所述虚拟机参考点来标识自所述时间点以来所述数据存储装置的所述多个数据块中的一个或多个改变。
13.权利要求12所述的计算机系统,其中由所存储的所述数据存储标识符和当前数据存储标识符标识的数据与之前生成的检查点组合。
14.根据权利要求12所述的计算机系统,其中所述稳定状态通过执行以下中的至少一项而被建立:在所述虚拟机内缓存随后的数据改变、实现用于所述虚拟机内的随后数据改变的临时写时复制、或者针对包括底层数据的一个或多个部分的所述虚拟机生成检查点。
15.根据权利要求12所述的计算机系统,其中所述数据存储标识符包括序列号或位图中的至少一项。
16.根据权利要求12所述的计算机系统,其中所述虚拟机参考点包括元数据,所述元数据包括所述至少一个数据存储标识符,使得所述虚拟机参考点是轻量的并且没有包括数据存储、存储器或者虚拟机状态的所述虚拟机检查点的检查点数据。
17.根据权利要求16所述的计算机系统,其中包括数据存储、存储器以及虚拟机状态的虚拟机检查点被转换成仅包括元数据的虚拟机参考点。
18.根据权利要求12所述的计算机系统,其中数据支持的检查点使用在所述虚拟机参考点和未来时间点之间的一个或多个经标识的改变而被重构。
19.根据权利要求12所述的计算机系统,其中所述至少一个操作包括以下一项或多项:备份数据、恢复数据、复制数据、或者向用户或其他指定实体提供数据。
20.一种计算机程序产品,包括在其上存储有计算机可执行指令的一个或多个硬件存储设备,所述计算机可执行指令由一个或多个处理器可执行以使计算机系统建立虚拟机参考点,所述计算机可执行指令包括可执行以使所述计算机系统至少执行以下的指令:
维持多个数据存储标识符,所述多个数据存储标识符标识与虚拟机相对应的数据存储装置的多个数据块中的经改变的数据块;
访问稳定虚拟机检查点,所述稳定虚拟机检查点包括虚拟机在一时间点处的可恢复映像并且存储所述数据存储装置的所述多个数据块中的至少一个数据块在所述时间点处存在时的数据的表示;
将所述虚拟机检查点转换成包括所述虚拟机在所述时间点处的表示的虚拟机参考点,其中虚拟机参考点信息是连同所述虚拟机可转移的,使得如果所述虚拟机被移动到不同的计算系统,则由所述虚拟机参考点标识的任何数据是可恢复的,转换包括:
查询所述数据存储装置以确定与所述时间点处的所述虚拟机检查点的所述至少一个数据块相对应的至少一个数据存储标识符;
将所确定的所述至少一个数据存储标识符存储为所述虚拟机参考点的一部分;以及
从所述虚拟机检查点释放所述至少一个数据块的所述数据的所述表示;以及
在将所述虚拟机检查点转换成所述虚拟机参考点之后,使用所述虚拟机参考点来标识自所述时间点以来所述数据存储装置的所述多个数据块中的一个或多个改变。