CN106446061A - 用于存储虚拟机镜像的方法及设备 - Google Patents

用于存储虚拟机镜像的方法及设备 Download PDF

Info

Publication number
CN106446061A
CN106446061A CN201610804730.6A CN201610804730A CN106446061A CN 106446061 A CN106446061 A CN 106446061A CN 201610804730 A CN201610804730 A CN 201610804730A CN 106446061 A CN106446061 A CN 106446061A
Authority
CN
China
Prior art keywords
file
storage device
main storage
mirror image
delta file
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.)
Pending
Application number
CN201610804730.6A
Other languages
English (en)
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.)
Shanghai Axis Mdt Infotech Ltd
Original Assignee
Shanghai Axis Mdt Infotech Ltd
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 Shanghai Axis Mdt Infotech Ltd filed Critical Shanghai Axis Mdt Infotech Ltd
Priority to CN201610804730.6A priority Critical patent/CN106446061A/zh
Publication of CN106446061A publication Critical patent/CN106446061A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0667Virtualisation aspects at data level, e.g. file, record or object virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请的目的是提供一种用于存储虚拟机镜像的方法及设备,该方案中所涉及的虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,在处理过程中,主存储设备仅生成所述虚拟机的增量文件,而无需生成所述虚拟机的镜像基础文件并生成完整的镜像文件。由于创建虚拟机所使用的是镜像服务器上的镜像基础文件,因此在向镜像服务器发送增量文件之后,镜像服务器中存储有组成完整镜像文件所需要的镜像基础文件以及相应的增量文件,因此在确保镜像文件完整性的前提下,仅需要较小的存储空间、计算资源和网络资源即可实现虚拟机镜像文件的存储。

Description

用于存储虚拟机镜像的方法及设备
技术领域
本申请涉及信息技术领域,尤其涉及一种用于存储虚拟机镜像的方法及设备。
背景技术
云计算作为一种新兴的资源供应模式,近年来得到了快速的发展。云计算旨在低成本地为用户按需提供高质量的弹性云服务。云计算提供的虚拟机服务有利于降低用户的IT成本,提高云供应商的资源利用率和管理能力,这种方式也存在资源滥用问题。由于虚拟机的创建成本较低,用户往往为不同的任务创建不同的虚拟机,由虚拟机产生的镜像文件是用户使用环境的备份文件。当虚拟机出现异常状况时,镜像文件可以为用户恢复备份时的使用场景。
在现有技术中,虚拟机(VM,Virtual Machine)运行于云计算平台的主存储设备中,虚拟机的镜像文件存储于镜像服务器中。一个完整的镜像文件(image)大小可能为几GB(GigaByte,千兆字节)到几十GB。在每次存储虚拟机镜像文件时,需要由主存储设备生成完整的镜像文件,然后通过SFTP(Secure File Transfer Protocol,安全文件传输协议),将镜像文件从主存储设备本地上传到到镜像服务器,保存一个相同大小的完整的镜像文件,由此完成镜像文件的存储过程。由于完成的镜像文件数据量较大,在每一次处理过程中都生成并存储虚拟机的完整镜像文件,将会占用大量的磁盘空间、计算资源以及网络资源。
申请内容
本申请的一个目的是提供一种用于存储虚拟机镜像的方法及设备,用以解决现有技术中占用大量的磁盘空间以及网络资源的问题。
为实现上述目的,本申请提供了一种用于存储虚拟机镜像的方法,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,其中,所述方法包括:
所述主存储设备存储所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系;
所述主存储设备将所述增量文件发送至镜像服务器。
进一步地,所述主存储设备将所述增量文件发送至镜像服务器之前,还包括:
所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件;
所述主存储设备将所述增量文件发送至镜像服务器,包括:
所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件。
进一步地,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,还包括:
所述主存储设备根据每个切片文件的内容生成对应的摘要;
所述主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件,包括:
所述主存储设备检测所述镜像服务器中是否存在相同的汇总摘要;
若不存在相同的汇总摘要,所述主存储设备将所述汇总摘要以及所述汇总摘要对应的所述切片文件发送至镜像服务器。
进一步地,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,还包括:
所述主存储设备根据每个切片文件的内容生成对应的摘要;
所述主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件,包括:
所述主存储设备检测所述镜像服务器中是否存在相同的汇总摘要;
若不存在相同的汇总摘要,所述主存储设备检测所述汇总摘要对应的摘要是否为非冗余摘要,其中,所述非冗余摘要为所述镜像服务器中已存储的摘要不同的摘要;
所述主存储设备将所述汇总摘要、所述非冗余摘要以及所述非冗余摘要对应的切片文件发送至镜像服务器。
进一步地,所述主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,包括:
所述主存储设备将所述增量文件的所有切片文件的摘要按预设顺序合并;
将合并后的摘要进行哈希计算,生成哈希值,以作为所述汇总摘要。
进一步地,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,包括:
所述主存储设备根据预设值对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,其中,每个切片文件的大小均小于等于所述预设值。
基于本申请的另一方面,还提供了一种用于存储虚拟机镜像的主存储设备,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于所述主存储设备,其中,所述主存储设备包括:
生成装置,用于生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系;
发送装置,用于将所述增量文件发送至镜像服务器。
进一步地,所述主存储设备还包括:
切片装置,用于在将所述增量文件发送至镜像服务器之前,对所述增量文件进行切片处理,生成关于所述增量文件的切片文件;
所述发送装置,用于采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件。
进一步地,所述主存储设备还包括:
标记装置,用于在对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,根据每个切片文件的内容生成对应的摘要;以及基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述发送装置,用于检测所述镜像服务器中是否存在相同的汇总摘要;以及在不存在相同的汇总摘要时,将所述汇总摘要以及所述汇总摘要对应的所述切片文件发送至镜像服务器。
进一步地,所述主存储设备还包括:
标记装置,用于在对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,根据每个切片文件的内容生成对应的摘要;以及基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述发送装置,用于检测所述镜像服务器中是否存在相同的汇总摘要;以及在不存在相同的汇总摘要时,检测所述汇总摘要对应的摘要是否为非冗余摘要,并将所述汇总摘要、所述非冗余摘要以及所述非冗余摘要对应的切片文件发送至镜像服务器,其中,所述非冗余摘要为所述镜像服务器中已存储的摘要不同的摘要。
进一步地,所述发送装置,在基于所述增量文件的所有切片文件的摘要生成汇总摘要时,用于将所述增量文件的所有切片文件的摘要按预设顺序合并,以及将合并后的摘要进行哈希计算,生成哈希值,以作为所述汇总摘要。
进一步地,所述切片装置,用于根据预设值对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,其中,每个切片文件的大小均小于等于所述预设值。
与现有技术相比,本申请提供了一种用于存储虚拟机镜像的方法及设备,该方案中所涉及的虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,在处理过程中,主存储设备仅生成所述虚拟机的增量文件,而无需生成所述虚拟机的镜像基础文件并生成完整的镜像文件。由于创建虚拟机所使用的是镜像服务器上的镜像基础文件,因此在向镜像服务器发送增量文件之后,镜像服务器中存储有组成完整镜像文件所需要的镜像基础文件以及相应的增量文件,因此在确保镜像文件完整性的前提下,仅需要较小的存储空间、计算资源和网络资源即可实现虚拟机镜像文件的存储。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请实施例提供的一种用于存储虚拟机镜像的方法的流程图;
图2为本申请中镜像文件、基础镜像文件以及增量文件之间相对关系的示意图;
图3为本申请实施例提供的一种优选的用于存储虚拟机镜像的方法的流程图;
图4为本申请实施例提供的第二种优选的用于存储虚拟机镜像的方法的流程图;
图5为本申请实施例提供的第三种优选的用于存储虚拟机镜像的方法的流程图;
图6为采用了本申请技术方案的主存储设备和镜像服务器的组成示意图;
图7为采用本申请提供的方法对主存储设备中的一个虚拟机存储镜像的处理过程的流程图;
图8为本申请实施例提供的一种用于存储虚拟机镜像的主存储设备的结构示意图;
图9为本申请实施例提供的一种优选的用于存储虚拟机镜像的主存储设备的结构示意图;
图10为本申请实施例提供的另一种优选的用于存储虚拟机镜像的主存储设备的结构示意图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
图1示出了本申请实施例提供的一种用于存储虚拟机镜像的方法,该方法中,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,在进行存储时,所述方法具体包括以下步骤:
步骤S101,所述主存储设备生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系。
步骤S102,所述主存储设备将所述增量文件发送至镜像服务器。
由于在实际场景中,虚拟机运行在云计算平台的主存储设备中,所述主存储设备即为云计算平台的某一节点,其具体实现可以是网络主机、单个网络服务器、多个网络服务器组成的集群等。在现有技术中,主存储设备中产生的某一虚拟机的完整镜像文件有可能为几G到几十G的大小,会占用大量的存储资源。且由于数据量较大,生成时间也会较长,因此将长时间占用主存储设备的计算资源,主存储设备计算资源不足的情况下可能会影响其他虚拟机的运行状态,影响整个主存储设备的稳定性。
该方法中所涉及的虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,在处理过程中,主存储设备仅生成所述虚拟机的增量文件,而无需生成所述虚拟机的镜像基础文件并生成完整的镜像文件。由于增量文件与创建虚拟机所使用的镜像基础文件存在索引关系,因此在向镜像服务器发送增量文件之后,镜像服务器中存储有组成完整镜像文件所需要的镜像基础文件以及相应的增量文件,因此在确保镜像文件完整性的前提下,仅需要较少的存储空间、计算资源和网络资源即可实现虚拟机镜像文件的存储。
在本申请中,所述索引关系可以通过定义一个JSON(JavaScriptObjectNotation,JavaScript对象表示法)文件来描述。所述基础镜像文件(base)是指创建虚拟机时所使用的完整镜像文件(image),而所述增量文件一般采用快照的方式生成,即快照文件(snapshot),当主存储设备生成一个虚拟机镜像时,将创建虚拟机时的image指定为只读状态,作为base,将磁盘中相对于base的增量数据作为snapshot。一般情况下,增量文件的数据量远小于基础镜像文件。
所述基础镜像文件是一个相对的概念,通过图2详细说明该相对关系。若镜像服务器中初始的镜像文件为image0,在创建虚拟机vm1时,该image0即为基础镜像文件base0。在虚拟机vm1之后一段时间之后,生成虚拟机vm1的镜像,此时生成的增量文件为snapshot1,该snapshot1与base0之间存在索引关系,由该索引关系可以确定snapshot1为base0的增量。将所述snapshot1发送至镜像服务器保存后,若之后需要创建新的虚拟机vm2,可以基于索引关系,将snapshot1和base0恢复成完整的镜像文件image1,该image1即为创建虚拟机vm2的基础镜像文件base1。此后,若生成虚拟机vm2的镜像,那么对于此时生成的增量文件snapshot2,其实质是base0以及snapshot1的增量数据,而基于索引关系,可以由snapshot2+base1(或者说snapshot2+snapshot1+base0)可以生成完整的镜像文件image2,以作为后续创建其虚拟机的base2,更多的迭代层次可以以此类推,此处不再赘述。
主存储设备将所述增量文件发送至镜像服务器的过程中,传输速度的快慢取决于当前的网络性能,在此期间,数据传输网络的I/O(Input/Output,输入/输出)会处于峰值,造成网络拥堵,如果管理网络和数据传输网络使用同样的网络资源,则影响管理网络中控制指令等信息的发送,进而可能会造成整个系统的瘫痪。
由此,本申请实例提供了一种优选的用于存储虚拟机镜像的方法,该方法中,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,在进行存储时,所述方法具体包括如图3所示,包括:
步骤S301,所述主存储设备生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系。
步骤S302,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件。
步骤S303,所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件。
主存储设备通过切片处理的方式,将增量文件进一步分为多个切片文件(chunk),在向镜像服务器发送时,可以采用并发的方式进行发送,提高了网络的利用率,有效降低网络拥堵的时间,以避免影响使用相同网络资源的管理网络。此外,作为一种可行的实施方式,除了并发的方式之外,主存储设备也可以使用串行的发送方式向镜像服务器发送这些切片文件。
在实际场景中,主存储设备可以根据预设值对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,使得每个切片文件的大小均小于等于所述预设值。所述预设值的大小可以根据具体的网络资源情况以及传输效率的需求来进行设定,例如在本申请实施例中,所述预设值的大小可以设定为4MB(Megabyte,兆字节)。由此,在对所述增量文件进行切片处理后,每个切片文件的大小均为4MB(除最后一个切片文件可能小于4MB)。
进一步地,在步骤S302,主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,还包括:
步骤S302a,主存储设备根据每个切片文件的内容生成对应的摘要。所述摘要(digest)为用于对每个切片文件进行标记的标记信息,具有唯一性,若两个切片文件的摘要相同,则表示这两个切片文件也相同。
步骤S302b,主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要(blobsum),其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一。为了保证汇总摘要与增量文件的所有切片文件的摘要对应,且映射关系唯一,可以采用哈希(hash)算法,具体为:主存储设备将所述增量文件的所有切片文件的摘要按预设顺序合并,然后将合并后的摘要进行哈希计算,生成哈希值,以作为所述汇总摘要。
此时,所述步骤S303具体包括:
步骤S303a,所述主存储设备检测所述镜像服务器中是否存在相同的汇总摘要。在实际场景中,所述检测的过程可以采用http(HyperTextTransfer Protocol,超文本传输协议)问答交互的方式实现。
步骤S303b,若不存在相同的汇总摘要,所述主存储设备将所述汇总摘要以及所述汇总摘要对应的所述切片文件发送至镜像服务器。若存在相同的汇总摘要,则不发送增量文件的切片文件。
上述处理的完整过程如图4所示,由于汇总摘要与汇总摘要与增量文件的所有切片文件的摘要对应,且映射关系唯一,在汇总摘要相同的情况下,表示镜像服务器中已经存在了相同的增量文件,而组成完整的image之后进行校验,提高了校验的效率,缩短了整个处理的时间。
进一步地,由于镜像中的内容大部分为操作系统的数据,对于相同或者类似操作系统的虚拟机所对应的镜像文件,其大部分内容可能是相同的。如用户将一台ubuntu操作系统的虚拟机生成一个镜像文件,那么用户下次使用该系统或其他linux操作系统生成镜像文件时,镜像文件中大部分内容与之前所产生的镜像文件相同(镜像文件中大部分内容为操作系统的数据,同一操作系统该部分数据相同,而同属于linux系列的操作系统中关于linux的部分文件相同)。为避免镜像服务器中产生大量的冗余数据,主存储设备进一步可以对待发送的切片文件进行校验,对于镜像服务器中已经存在的相同切片文件,不进行发送,由此避免镜像服务器中存储大量的冗余数据,提高存储效率,此外由于减少到了发送的数据量,也可以优化网络资源的利用率。
具体地,该优选方案的具体处理流程如图5所示,包括:
步骤S501,主存储设备生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系。
步骤S502,主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件。
步骤S503,主存储设备根据每个切片文件的内容生成对应的摘要。
步骤S504,主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一。
步骤S505,主存储设备检测所述镜像服务器中是否存在相同的汇总摘要。
步骤S506,若不存在相同的汇总摘要,所述主存储设备检测所述汇总摘要对应的摘要是否为非冗余摘要,其中,所述非冗余摘要为所述镜像服务器中已存储的摘要不同的摘要。例如,主存储设备中本次待发送的切片文件为40个,所对应的摘要分别为:a1,a2,a3,……,a40,通过http问答交互的方式,检测到镜像服务器中已经存在的切片文件的摘要包含a2,a3,a34和a35,则表示镜像服务器上已经保存了这4个摘要对应的切片文件,无需再重复发送,由此将上述a2,a3,a34和a35确定为冗余摘要,除上述4个之外的36个摘要即为非冗余摘要。
步骤S507,所述主存储设备将所述汇总摘要、所述非冗余摘要以及所述非冗余摘要对应的切片文件发送至镜像服务器。接上例,由于a1、a4~a33、a36~a40这36个摘要为非冗余摘要,则表示镜像服务器中并未保存其对应的36个切片文件,因此将这几个切片文件以及对应的摘要、所有摘要的汇总摘要一起发送至镜像服务器,进行保存,由此完成虚拟机镜像的存储过程。
图6为采用了本申请技术方案的主存储设备和镜像服务器的组成示意图,该示意图可知:虚拟机运行在主存储设备中,在存储镜像时,仅生成虚拟机运行状态的快照文件(snapshot),作为增量文件。镜像服务器以切片文件(chunk)的形式保存着镜像文件,通过索引关系、摘要以及汇总摘要,使其能够在逻辑上组合为base、snapshot、image等文件。
以图7所示的系统为例,详细说明采用本申请提供的方法对主存储设备中的一个虚拟机存储镜像的处理过程,在主存储设备端的具体处理流程如下:
步骤S701,对一个运行中的虚拟机生成镜像。
步骤S702,生成一个snapshot。
步骤S703,对snapshot进行切片处理,生成多个大小为4MB的chunk(除了最后一个,最后一个可能小于4MB)。
步骤S704,对每个chunk进行标记,生成对应的digest。
步骤S705,基于所有的digset进行hash计算,生成一个字符串blobsum。
步骤S706,校验blobsum是否在镜像服务器中已存在。
步骤S707,如果发现相同blobsum,则说明该snapshot在镜像服务器中已经存在,无需发送。
步骤S708,如果未发现相同的blobsum,则校验chunk的digest,与镜像服务器中已有的chunk的digest比对。
步骤S709,如果查到相同digest,则表示该digest对应的chunk重复,不发送该chunk。
步骤S710,如果未查到某一chunk的digest,则将该chunk上传至镜像服务器。
基于本申请的另一方面,图8示出了本申请实施例提供的一种用于存储虚拟机镜像的主存储设备,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于所述主存储设备,所述主存储设备包括:生成装置810和发送装置820。具体地,所述生成装置810用于生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系;所述发送装置820用于将所述增量文件发送至镜像服务器。
由于在实际场景中,虚拟机运行在云计算平台的主存储设备中,所述主存储设备即为云计算平台的某一节点,其具体实现可以是网络主机、单个网络服务器、多个网络服务器组成的集群等。在现有技术中,主存储设备中产生的某一虚拟机的完整镜像文件有可能为几G到几十G的大小,会占用大量的存储资源。且由于数据量较大,生成时间也会较长,因此将长时间占用主存储设备的计算资源,主存储设备计算资源不足的情况下可能会影响其他虚拟机的运行状态,影响整个主存储设备的稳定性。
该方案中所涉及的虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,在处理过程中,主存储设备仅生成所述虚拟机的增量文件,而无需生成所述虚拟机的镜像基础文件并生成完整的镜像文件。由于增量文件与创建虚拟机所使用的镜像基础文件存在索引关系,因此在向镜像服务器发送增量文件之后,镜像服务器中存储有组成完整镜像文件所需要的镜像基础文件以及相应的增量文件,因此在确保镜像文件完整性的前提下,仅需要较少的存储空间、计算资源和网络资源即可实现虚拟机镜像文件的存储。
在本申请中,所述索引关系可以通过定义一个JSON(JavaScriptObjectNotation,JavaScript对象表示法)文件来描述。所述基础镜像文件(base)是指创建虚拟机时所使用的完整镜像文件(image),而所述增量文件一般采用快照的方式生成,即快照文件(snapshot),当主存储设备生成一个虚拟机镜像时,将创建虚拟机时的image指定为只读状态,作为base,将磁盘中相对于base的增量数据作为snapshot。一般情况下,增量文件的数据量远小于基础镜像文件。
所述基础镜像文件是一个相对的概念,通过图2详细说明该相对关系。若镜像服务器中初始的镜像文件为image0,在创建虚拟机vm1时,该image0即为基础镜像文件base0。在虚拟机vm1之后一段时间之后,生成虚拟机vm1的镜像,此时生成的增量文件为snapshot1,该snapshot1与base0之间存在索引关系,由该索引关系可以确定snapshot1为base0的增量。将所述snapshot1发送至镜像服务器保存后,若之后需要创建新的虚拟机vm2,可以基于索引关系,将snapshot1和base0恢复成完整的镜像文件image1,该image1即为创建虚拟机vm2的基础镜像文件base1。此后,若生成虚拟机vm2的镜像,那么对于此时生成的增量文件snapshot2,其实质是base0以及snapshot1的增量数据,而基于索引关系,可以由snapshot2+base1(或者说snapshot2+snapshot1+base0)可以生成完整的镜像文件image2,以作为后续创建其虚拟机的base2,更多的迭代层次可以以此类推,此处不再赘述。
主存储设备将所述增量文件发送至镜像服务器的过程中,传输速度的快慢取决于当前的网络性能,在此期间,数据传输网络的I/O(Input/Output,输入/输出)会处于峰值,造成网络拥堵,如果管理网络和数据传输网络使用同样的网络资源,则影响管理网络中控制指令等信息的发送,进而可能会造成整个系统的瘫痪。
由此,本申请实例提供了一种优选的用于存储虚拟机镜像的主存储设备,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,所述主存储设备的结构如图9所示,包括:生成装置810、切片装置830和发送装置820。具体地,所述生成装置810用于生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系;切片装置830用于在将所述增量文件发送至镜像服务器之前,对所述增量文件进行切片处理,生成关于所述增量文件的切片文件;所述发送装置820用于将所述增量文件发送至镜像服务器。
主存储设备通过切片处理的方式,将增量文件进一步分为多个切片文件(chunk),在向镜像服务器发送时,可以采用并发的方式进行发送,提高了网络的利用率,有效降低网络拥堵的时间,以避免影响使用相同网络资源的管理网络。此外,作为一种可行的实施方式,除了并发的方式之外,主存储设备的发送装置也可以使用串行的发送方式向镜像服务器发送这些切片文件。
在实际场景中,主存储设备可以根据预设值对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,使得每个切片文件的大小均小于等于所述预设值。所述预设值的大小可以根据具体的网络资源情况以及传输效率的需求来进行设定,例如在本申请实施例中,所述预设值的大小可以设定为4MB(Megabyte,兆字节)。由此,在对所述增量文件进行切片处理后,每个切片文件的大小均为4MB(除最后一个切片文件可能小于4MB)。
进一步地,本申请还提供另一种用于存储虚拟机镜像的主存储设备,该主存储设备的结构如图10所示,除生成装置810、切片装置830和发送装置820之外,还进一步包括标记装置840。具体地,所述标记装置840用于在对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,根据每个切片文件的内容生成对应的摘要;以及基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一。
所述摘要(digest)为用于对每个切片文件进行标记的标记信息,具有唯一性,若两个切片文件的摘要相同,则表示这两个切片文件也相同。为了保证汇总摘要与增量文件的所有切片文件的摘要对应,且映射关系唯一,可以采用哈希(hash)算法,具体为:主存储设备将所述增量文件的所有切片文件的摘要按预设顺序合并,然后将合并后的摘要进行哈希计算,生成哈希值,以作为所述汇总摘要。
在所述主存储设备中,其发送装置820具体用于检测所述镜像服务器中是否存在相同的汇总摘要;以及在不存在相同的汇总摘要时,将所述汇总摘要以及所述汇总摘要对应的所述切片文件发送至镜像服务器。在实际场景中,所述检测的过程可以采用http问答交互的方式实现。若检测结果存在相同的汇总摘要,则不发送增量文件的切片文件。
由于汇总摘要与汇总摘要与增量文件的所有切片文件的摘要对应,且映射关系唯一,在汇总摘要相同的情况下,表示镜像服务器中已经存在了相同的增量文件,而组成完整的image之后进行校验,提高了校验的效率,缩短了整个处理的时间。
进一步地,由于镜像中的内容大部分为操作系统的数据,对于相同或者类似操作系统的虚拟机所对应的镜像文件,其大部分内容可能是相同的。如用户将一台ubuntu操作系统的虚拟机生成一个镜像文件,那么用户下次使用该系统或其他linux操作系统生成镜像文件时,镜像文件中大部分内容与之前所产生的镜像文件相同(镜像文件中大部分内容为操作系统的数据,同一操作系统该部分数据相同,而同属于linux系列的操作系统中关于linux的部分文件相同)。为避免镜像服务器中产生大量的冗余数据,主存储设备进一步可以对待发送的切片文件进行校验,对于镜像服务器中已经存在的相同切片文件,不进行发送,由此避免镜像服务器中存储大量的冗余数据,提高存储效率,此外由于减少到了发送的数据量,也可以优化网络资源的利用率。
具体地,本申请实施例提供了一种更优选的主存储设备,所述主存储设备的结构可参考图10实施例,包括:生成装置810、切片装置830、标记装置840以及发送装置820。其生成装置810、切片装置830和标记装置840所实现的功能与图10所示实施例中相应装置的功能相同,而所述发送装置820具体用于:检测所述镜像服务器中是否存在相同的汇总摘要;以及在不存在相同的汇总摘要时,检测所述汇总摘要对应的摘要是否为非冗余摘要,并将所述汇总摘要、所述非冗余摘要以及所述非冗余摘要对应的切片文件发送至镜像服务器,其中,所述非冗余摘要为所述镜像服务器中已存储的摘要不同的摘要。
例如,主存储设备中本次待发送的切片文件为40个,所对应的摘要分别为:a1,a2,a3,……,a40,通过http问答交互的方式,检测到镜像服务器中已经存在的切片文件的摘要包含a2,a3,a34和a35,则表示镜像服务器上已经保存了这4个摘要对应的切片文件,无需再重复发送,由此将上述a2,a3,a34和a35确定为冗余摘要,除上述4个之外的36个摘要即为非冗余摘要。
由于a1、a4~a33、a36~a40这36个摘要为非冗余摘要,则表示镜像服务器中并未保存其对应的36个切片文件,因此将这几个切片文件以及对应的摘要、所有摘要的汇总摘要一起发送至镜像服务器,进行保存,由此完成虚拟机镜像的存储过程。
综上所述,本申请提供的方案中,主存储设备仅生成所述虚拟机的增量文件,而无需生成所述虚拟机的镜像基础文件并生成完整的镜像文件。由于创建虚拟机所使用的是镜像服务器上的镜像基础文件,因此在向镜像服务器发送增量文件之后,镜像服务器中存储有组成完整镜像文件所需要的镜像基础文件以及相应的增量文件,因此在确保镜像文件完整性的前提下,仅需要较小的存储空间、计算资源和网络资源即可实现虚拟机镜像文件的存储。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。

Claims (12)

1.一种用于存储虚拟机镜像的方法,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于主存储设备,其中,所述方法包括:
所述主存储设备生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系;
所述主存储设备将所述增量文件发送至镜像服务器。
2.根据权利要求1所述的方法,其中,所述主存储设备将所述增量文件发送至镜像服务器之前,还包括:
所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件;
所述主存储设备将所述增量文件发送至镜像服务器,包括:
所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件。
3.根据权利要求2所述的方法,其中,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,还包括:
所述主存储设备根据每个切片文件的内容生成对应的摘要;
所述主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件,包括:
所述主存储设备检测所述镜像服务器中是否存在相同的汇总摘要;
若不存在相同的汇总摘要,所述主存储设备将所述汇总摘要以及所述汇总摘要对应的所述切片文件发送至镜像服务器。
4.根据权利要求2所述的方法,其中,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,还包括:
所述主存储设备根据每个切片文件的内容生成对应的摘要;
所述主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述主存储设备采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件,包括:
所述主存储设备检测所述镜像服务器中是否存在相同的汇总摘要;
若不存在相同的汇总摘要,所述主存储设备检测所述汇总摘要对应的摘要是否为非冗余摘要,其中,所述非冗余摘要为所述镜像服务器中已存储的摘要不同的摘要;
所述主存储设备将所述汇总摘要、所述非冗余摘要以及所述非冗余摘要对应的切片文件发送至镜像服务器。
5.根据权利要求3或4所述的方法,其中,所述主存储设备基于所述增量文件的所有切片文件的摘要生成汇总摘要,包括:
所述主存储设备将所述增量文件的所有切片文件的摘要按预设顺序合并;
将合并后的摘要进行哈希计算,生成哈希值,以作为所述汇总摘要。
6.根据权利要求2所述的方法,其中,所述主存储设备对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,包括:
所述主存储设备根据预设值对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,其中,每个切片文件的大小均小于等于所述预设值。
7.一种用于存储虚拟机镜像的主存储设备,所述虚拟机基于从镜像服务器获取的镜像基础文件创建,并运行于所述主存储设备,其中,所述主存储设备包括:
生成装置,用于生成所述虚拟机的增量文件,并建立与所述镜像基础文件之间的索引关系;
发送装置,用于将所述增量文件发送至镜像服务器。
8.根据权利要求7所述的主存储设备,其中,所述主存储设备还包括:
切片装置,用于在将所述增量文件发送至镜像服务器之前,对所述增量文件进行切片处理,生成关于所述增量文件的切片文件;
所述发送装置,用于采用并发的方式向所述镜像服务器发送关于所述增量文件的切片文件。
9.根据权利要求8所述的主存储设备,其中,所述主存储设备还包括:
标记装置,用于在对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,根据每个切片文件的内容生成对应的摘要;以及基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述发送装置,用于检测所述镜像服务器中是否存在相同的汇总摘要;以及在不存在相同的汇总摘要时,将所述汇总摘要以及所述汇总摘要对应的所述切片文件发送至镜像服务器。
10.根据权利要求8所述的主存储设备,其中,所述主存储设备还包括:
标记装置,用于在对所述增量文件进行切片处理,生成关于所述增量文件的切片文件之后,根据每个切片文件的内容生成对应的摘要;以及基于所述增量文件的所有切片文件的摘要生成汇总摘要,其中,所述汇总摘要与所述增量文件的所有切片文件的摘要对应,且映射关系唯一;
所述发送装置,用于检测所述镜像服务器中是否存在相同的汇总摘要;以及在不存在相同的汇总摘要时,检测所述汇总摘要对应的摘要是否为非冗余摘要,并将所述汇总摘要、所述非冗余摘要以及所述非冗余摘要对应的切片文件发送至镜像服务器,其中,所述非冗余摘要为所述镜像服务器中已存储的摘要不同的摘要。
11.根据权利要求9或10所述的主存储设备,其中,所述发送装置,在基于所述增量文件的所有切片文件的摘要生成汇总摘要时,用于将所述增量文件的所有切片文件的摘要按预设顺序合并,以及将合并后的摘要进行哈希计算,生成哈希值,以作为所述汇总摘要。
12.根据权利要求8所述的设备,其中,所述切片装置,用于根据预设值对所述增量文件进行切片处理,生成关于所述增量文件的切片文件,其中,每个切片文件的大小均小于等于所述预设值。
CN201610804730.6A 2016-09-06 2016-09-06 用于存储虚拟机镜像的方法及设备 Pending CN106446061A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610804730.6A CN106446061A (zh) 2016-09-06 2016-09-06 用于存储虚拟机镜像的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610804730.6A CN106446061A (zh) 2016-09-06 2016-09-06 用于存储虚拟机镜像的方法及设备

Publications (1)

Publication Number Publication Date
CN106446061A true CN106446061A (zh) 2017-02-22

Family

ID=58164828

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610804730.6A Pending CN106446061A (zh) 2016-09-06 2016-09-06 用于存储虚拟机镜像的方法及设备

Country Status (1)

Country Link
CN (1) CN106446061A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107256368A (zh) * 2017-06-06 2017-10-17 北京航空航天大学 基于写时复制特性的虚拟机内文件完整性度量方法
CN108572888A (zh) * 2017-03-14 2018-09-25 阿里巴巴集团控股有限公司 磁盘快照创建方法和磁盘快照创建装置
CN108924186A (zh) * 2018-06-04 2018-11-30 郑州云海信息技术有限公司 一种云管平台中文件存储的创建方法和系统
CN108984343A (zh) * 2018-07-10 2018-12-11 西北工业大学 一种基于内容分析的虚拟机备份及存储管理方法
CN109672752A (zh) * 2019-01-16 2019-04-23 上海云轴信息科技有限公司 数据同步的方法及节点
CN111600943A (zh) * 2020-05-09 2020-08-28 上海云轴信息科技有限公司 一种用于获取目标数据的方法与设备
CN111857956A (zh) * 2020-07-21 2020-10-30 上海云轴信息科技有限公司 虚拟机启动方法及设备
CN111966388A (zh) * 2020-07-10 2020-11-20 福建升腾资讯有限公司 节省空间的镜像版本更新管理方法、装置、设备和介质
CN112104725A (zh) * 2020-09-09 2020-12-18 中国联合网络通信集团有限公司 容器镜像去重方法、系统、计算机设备及存储介质
CN112363795A (zh) * 2020-10-13 2021-02-12 南京赛宁信息技术有限公司 一种网络安全实训平台虚拟机快速启动方法与系统
CN115082228A (zh) * 2021-03-10 2022-09-20 上海子午线新荣科技有限公司 一种初次镜像和增量传输的数据方式

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103139300A (zh) * 2013-02-05 2013-06-05 杭州电子科技大学 一种基于重复数据删除的虚拟机镜像管理的优化方法
CN104572340A (zh) * 2013-10-18 2015-04-29 宇宙互联有限公司 增量备份系统及方法
CN105404506A (zh) * 2015-10-30 2016-03-16 广州云晫信息科技有限公司 一种云计算镜像文件的构建方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103139300A (zh) * 2013-02-05 2013-06-05 杭州电子科技大学 一种基于重复数据删除的虚拟机镜像管理的优化方法
CN104572340A (zh) * 2013-10-18 2015-04-29 宇宙互联有限公司 增量备份系统及方法
CN105404506A (zh) * 2015-10-30 2016-03-16 广州云晫信息科技有限公司 一种云计算镜像文件的构建方法及系统

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108572888A (zh) * 2017-03-14 2018-09-25 阿里巴巴集团控股有限公司 磁盘快照创建方法和磁盘快照创建装置
CN107256368A (zh) * 2017-06-06 2017-10-17 北京航空航天大学 基于写时复制特性的虚拟机内文件完整性度量方法
CN107256368B (zh) * 2017-06-06 2020-02-07 北京航空航天大学 基于写时复制特性的虚拟机内文件完整性度量方法
CN108924186A (zh) * 2018-06-04 2018-11-30 郑州云海信息技术有限公司 一种云管平台中文件存储的创建方法和系统
CN108984343A (zh) * 2018-07-10 2018-12-11 西北工业大学 一种基于内容分析的虚拟机备份及存储管理方法
CN109672752A (zh) * 2019-01-16 2019-04-23 上海云轴信息科技有限公司 数据同步的方法及节点
CN111600943A (zh) * 2020-05-09 2020-08-28 上海云轴信息科技有限公司 一种用于获取目标数据的方法与设备
CN111966388A (zh) * 2020-07-10 2020-11-20 福建升腾资讯有限公司 节省空间的镜像版本更新管理方法、装置、设备和介质
CN111857956A (zh) * 2020-07-21 2020-10-30 上海云轴信息科技有限公司 虚拟机启动方法及设备
CN111857956B (zh) * 2020-07-21 2024-03-12 上海云轴信息科技有限公司 虚拟机启动方法及设备
CN112104725A (zh) * 2020-09-09 2020-12-18 中国联合网络通信集团有限公司 容器镜像去重方法、系统、计算机设备及存储介质
CN112363795A (zh) * 2020-10-13 2021-02-12 南京赛宁信息技术有限公司 一种网络安全实训平台虚拟机快速启动方法与系统
CN112363795B (zh) * 2020-10-13 2021-11-26 南京赛宁信息技术有限公司 一种网络安全实训平台虚拟机快速启动方法与系统
CN115082228A (zh) * 2021-03-10 2022-09-20 上海子午线新荣科技有限公司 一种初次镜像和增量传输的数据方式

Similar Documents

Publication Publication Date Title
CN106446061A (zh) 用于存储虚拟机镜像的方法及设备
US9613037B2 (en) Resource allocation for migration within a multi-tiered system
CN110287197B (zh) 一种数据存储方法、迁移方法及装置
JP2021523474A (ja) グラフデータ処理方法、グラフデータの計算タスクの配布方法、装置、コンピュータプログラム、及びコンピュータ機器
US20210004251A1 (en) Optimizing image reconstruction for container registries
CN106445643B (zh) 克隆、升级虚拟机的方法及设备
CN102938784A (zh) 应用于分布式存储系统中的数据存储方法和系统
CN108268609A (zh) 一种文件路径的建立、访问方法和装置
CN106354587A (zh) 镜像服务器以及导出虚拟机镜像文件的方法
EP3432132B1 (en) Data storage method and device
CN110968554A (zh) 一种基于文件链分块的区块链存储方法、存储系统及存储介质
CN109672752A (zh) 数据同步的方法及节点
CN105117489B (zh) 一种数据库管理方法、装置及电子设备
CN115756955A (zh) 一种数据备份、数据恢复的方法、装置及计算机设备
US11017874B2 (en) Data and memory reorganization
US20220326917A1 (en) Automated software application generation
US11645279B2 (en) Index selection for database query
CN107463638A (zh) 离线虚拟机间文件共享方法和设备
US10956378B2 (en) Hierarchical file transfer using KDE-optimized filesize probability densities
EP2609512B1 (en) Transferring files
khalili azimi A Bee Colony (Beehive) based approach for data replication in cloud environments
CN104932982A (zh) 一种消息访存的编译方法及相关装置
CN108769123B (zh) 一种数据系统及数据处理方法
CN113312314A (zh) 一种用于安卓平台重复文件检索的方法、装置及设备
KR20210137612A (ko) 블록체인을 관리하기 위한 장치, 방법, 시스템 및 컴퓨터 판독가능 저장 매체

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170222

RJ01 Rejection of invention patent application after publication