本申请涉及虚拟机,尤其涉及一种数据处理方法、装置及电子设备。
背景技术:
1、随着混合部署架构的流程,虚拟机和容器逐渐演变成融合形态。但是,目前的虚拟机镜像文件不能直接兼容容器镜像文件。
2、因此,亟需一种能够构建兼容容器镜像文件的虚拟机镜像文件的技术方案。
技术实现思路
1、有鉴于此,本申请提供一种数据处理方法、装置及电子设备,如下:
2、一种数据处理方法,包括:
3、获得虚拟机的虚拟数据,所述虚拟数据包含多个虚拟块层,所述虚拟块层包含至少一个存储块,所述存储块用于存储数据,且,所述虚拟块层之间具有父子关系,其中作为子层的虚拟块层用于存储相对于作为父层的虚拟块层所存储数据的差异数据;
4、根据所述虚拟块层的存储块中存储的数据,获得层压缩文件;一个所述层压缩文件对应于一个所述虚拟块层;
5、组合多个所述层压缩文件,以得到所述虚拟机对应的镜像文件。
6、上述方法,优选的,所述虚拟机对应有第一存储表和多个第二存储表,一个所述第二存储表对应于一个所述虚拟块层;所述第一存储表中包含多条第一条目,所述第一条目至少用于记录所述虚拟块层之间的父子关系;所述第二存储表中包含至少一条第二条目,一个所述第二条目对应于一个所述存储块,所述第二条目至少用于记录所述存储块的存储地址;
7、其中,所述第一条目和所述第二条目用于获得所述层压缩文件。
8、上述方法,优选的,根据所述虚拟块层的存储块中存储的数据,获得层压缩文件,包括:
9、按照所述第二存储表中的所述第二条目所记录的存储地址,读取每个所述存储块中存储的目标数据;
10、对每个所述虚拟块层对应的目标数据进行处理,以得到分别对应于每个所述虚拟块层的层压缩文件。
11、上述方法,优选的,对每个所述虚拟块层对应的目标数据进行处理,以得到分别对应于每个所述虚拟块层的层压缩文件,包括:
12、将属于同一所述虚拟块层对应的目标数据存放在地址连续的存储区域;
13、对所述存储区域中属于同一所述虚拟块层的目标数据进行压缩处理,以得到分别对应于每个所述虚拟块层的层压缩文件。
14、上述方法,优选的,所述第一条目还用于记录所述子层和所述父层之间存储块的存储地址相同且所存储的数据不同的存储冲突位;
15、其中,所述存储冲突位用于获得所述层压缩文件。
16、上述方法,优选的,在所述第一条目记录有所述存储冲突位的情况下,所述存储冲突位对应的存储块的目标数据为:目标层中所述存储冲突位对应的存储块中存储的数据;
17、其中,所述目标层为所述第一条目对应的虚拟块层的子层,所述目标层中包含所述存储冲突位对应的存储块,且所述目标层的子层中不包含所述存储冲突位对应的存储块。
18、上述方法,优选的,组合多个所述层压缩文件,以得到所述虚拟机对应的镜像文件,包括:
19、按照预设的目标数据格式,对所有所述虚拟块层对应的层压缩文件进行组合,以得到所述目标数据格式的镜像文件。
20、上述方法,优选的,所述方法还包括:
21、在所述镜像文件中添加配置文件,所述配置文件中至少包含所述虚拟机的属性信息和所述虚拟块层的父子关系。
22、一种数据处理装置,包括:
23、数据获得单元,用于获得虚拟机的虚拟数据,所述虚拟数据包含多个虚拟块层,所述虚拟块层包含至少一个存储块,所述存储块用于存储数据,且,所述虚拟块层之间具有父子关系,其中作为子层的虚拟块层用于存储相对于作为父层的虚拟块层所存储数据的差异数据;
24、数据压缩单元,用于根据所述虚拟块层的存储块中存储的数据,获得层压缩文件;一个所述层压缩文件对应于一个所述虚拟块层;
25、文件组合单元,用于组合多个所述层压缩文件,以得到所述虚拟机对应的镜像文件。
26、一种电子设备,包括:
27、存储器,用于存储计算机程序以及所述计算机程序执行所产生的数据;
28、处理器,用于执行所述计算机程序,以实现:获得虚拟机的虚拟数据,所述虚拟数据包含多个虚拟块层,所述虚拟块层包含至少一个存储块,所述存储块用于存储数据,且,所述虚拟块层之间具有父子关系,其中作为子层的虚拟块层用于存储相对于作为父层的虚拟块层所存储数据的差异数据;根据所述虚拟块层的存储块中存储的数据,获得层压缩文件;一个所述层压缩文件对应于一个所述虚拟块层;组合多个所述层压缩文件,以得到所述虚拟机对应的镜像文件。
29、从上述技术方案可以看出,本申请公开的一种数据处理方法及电子设备中,首先获得虚拟机的包含多个虚拟块层的虚拟数据,每个虚拟块层中包含至少一个用于存储数据的存储块,而虚拟块层之间具有父子关系,作为子层的虚拟块层存储相对于作为父层的虚拟块层所存储数据的差异数据,基于此,按照虚拟块层,根据虚拟块层的存储块中存储的数据,获得分别对应于每个虚拟块层的层压缩文件,进而组合这多个层压缩文件,得到虚拟机对应的镜像文件。可见,本申请中将虚拟机存储块中按层存储的差异数据同样按照层分别获得相应的层压缩文件,再组合这些层压缩文件,由此得到能够兼容容器镜像文件的虚拟机镜像文件,进而避免虚拟机镜像文件与容器镜像文件直接兼容的情况。
1.一种数据处理方法,包括:
2.根据权利要求1所述的方法,所述虚拟机对应有第一存储表和多个第二存储表,一个所述第二存储表对应于一个所述虚拟块层;所述第一存储表中包含多条第一条目,所述第一条目至少用于记录所述虚拟块层之间的父子关系;所述第二存储表中包含至少一条第二条目,一个所述第二条目对应于一个所述存储块,所述第二条目至少用于记录所述存储块的存储地址;
3.根据权利要求2所述的方法,根据所述虚拟块层的存储块中存储的数据,获得层压缩文件,包括:
4.根据权利要求3所述的方法,对每个所述虚拟块层对应的目标数据进行处理,以得到分别对应于每个所述虚拟块层的层压缩文件,包括:
5.根据权利要求3所述的方法,所述第一条目还用于记录所述子层和所述父层之间存储块的存储地址相同且所存储的数据不同的存储冲突位;
6.根据权利要求5所述的方法,在所述第一条目记录有所述存储冲突位的情况下,所述存储冲突位对应的存储块的目标数据为:目标层中所述存储冲突位对应的存储块中存储的数据;
7.根据权利要求1或2所述的方法,组合多个所述层压缩文件,以得到所述虚拟机对应的镜像文件,包括:
8.根据权利要求1或7所述的方法,所述方法还包括:
9.一种数据处理装置,包括:
10.一种电子设备,包括: