CN107357691B - 镜像文件的处理方法及装置 - Google Patents
镜像文件的处理方法及装置 Download PDFInfo
- Publication number
- CN107357691B CN107357691B CN201610303594.2A CN201610303594A CN107357691B CN 107357691 B CN107357691 B CN 107357691B CN 201610303594 A CN201610303594 A CN 201610303594A CN 107357691 B CN107357691 B CN 107357691B
- Authority
- CN
- China
- Prior art keywords
- file
- image file
- specified
- image
- mirror image
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2064—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring while ensuring consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种镜像文件的处理方法及装置,其中,方法包括:判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件,在判断结果为是时,放弃将所述指定镜像文件从源存储库中拷贝至所述目标存储库中的操作。通过本发明,解决了相关技术中对相同的镜像文件进行重复拷贝而浪费存储资源的问题。
Description
技术领域
本发明涉及文件处理领域,具体而言,涉及一种镜像文件的处理方法及装置。
背景技术
在虚拟化场景中,一般会创建多个存储库,所有的虚机磁盘文件都创建在这些存储库上。当存储库空间爆满,或者业务管理需要,必须将部分虚拟机迁移到其他的存储库。一般而言,可以直接拷贝虚拟机的磁盘文件至目标存储。但是这样一来如果两个虚机的磁盘公用一个父节点文件,如果都迁移到同一个存储库中,就会出现一个源文件产生多个目标副本的现象。
正对相关技术中存在的上述问题,目前尚未发现有效的解方案。
发明内容
本发明提供了一种镜像文件的方法及装置,以至少解决相关技术中对相同的镜像文件进行重复拷贝而浪费存储资源的问题。
根据本发明的一个方面,提供了一种镜像文件的处理方法,包括:判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;在判断结果为是时,放弃将所述指定镜像文件从源存储库中拷贝至所述目标存储库中的操作。
进一步地,在判断结果为否时,所述方法还包括:将所述指定镜像文件拷贝至所述目标存储库中,并将所述镜像标识赋值给所述目标存储库中的所述指定镜像文件。
进一步地,所述方法还包括:在所述指定镜像文件发生变化时,在所述指定镜像文件发生变化时,更新所述指定镜像文件的镜像标识。
进一步地,所述指定镜像文件发生变化包括:所述指定镜像文件的数据内容发生变化;和/或,所述指定镜像文件在层次模型或网状模型中的节点位置发生变化。
进一步地,在更新所述指定镜像文件的镜像标识之后,所述方法还包括以下至少之一:将所述指定镜像文件更新前的镜像标识对应的镜像文件及其镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的父节点的镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的子节点的镜像标识进行更新。
根据本发明的一个方面,提供了另一种镜像文件的处理方法,包括:设置指定镜像文件的镜像标识;在所述指定镜像文件发生变化时,更新所述指定镜像文件的镜像标识。
进一步地,所述指定镜像文件发生变化包括:所述指定镜像文件的数据内容发生变化;和/或,所述指定镜像文件在层次模型或网状模型中的节点位置发生变化。
进一步地,在更新所述镜像文件的镜像标识之后,所述方法还包括以下至少之一:将所述指定镜像文件更新前的镜像标识对应的镜像文件及其镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的父节点的镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的子节点的镜像标识进行更新。
进一步地,设置指定镜像文件的镜像标识包括:在创建指定镜像文件时,设置与所述指定镜像文件对应的镜像标识;和/或,在所述指定镜像文件从源存储库迁移到目标存储库时,将所述指定镜像文件在目标存储库中的镜像标识设置为与所述指定镜像文件在源存储库中的镜像标识相同。
根据本发明的另一方面,提供了一种镜像文件的处理装置,包括:判断模块,用于判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;处理模块,用于在判断结果为是时,放弃将所述指定镜像文件从源存储库中拷贝至所述目标存储库中的操作。
根据本发明的另一方面,提供了另一种镜像文件的处理装置,包括:设置模块,用于设置指定镜像文件的镜像标识;更新模块,用于在所述指定镜像文件发生变化时,更新所述指定镜像文件的镜像标识。
通过本发明,采用判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件,在判断结果为是时,放弃将所述指定镜像文件从源存储库中拷贝至所述目标存储库中的操作,通过在拷贝镜像文件前还判断目标存储库中是否已经存在待拷贝的镜像文件,解决了相关技术中对相同的镜像文件进行重复拷贝而浪费存储资源的问题,进而达到了高效管理镜像文件的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种镜像文件的处理方法的流程图;
图2是根据本发明实施例的另一种镜像文件的处理方法的流程图;
图3是根据本发明实施例的一种镜像文件的处理装置的结构框图;
图4是根据本发明实施例的另一种镜像文件的处理装置的结构框图;
图5是根据本发明可选实施例的存储迁移的文件变化示意图;
图6是根据本发明可选实施例的存储迁移的镜像判断流程图;
图7是根据本发明可选实施例的文件重置查找关联文件的示意图;
图8是根据本发明可选实施例的文件重置查找关联文件的流程图;
图9是根据本发明可选实施例的单个文件重置镜像标识的流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了一种镜像文件的处理方法,图1是根据本发明实施例的一种镜像文件的处理方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;可选的,拷贝即文件迁移,如:复制、粘贴。
步骤S104,在判断结果为是时,放弃将指定镜像文件从源存储库中拷贝至目标存储库中的操作。
可选的,镜像文件包括与其对应的镜像标识mirror_id,在迁移的时候就可以使用该mirrorid进行判断,如果目标存储上拥有跟源存储上文件相同mirror_id的文件,那就可以不进行实际的文件拷贝工作,重用已存在的文件。
通过上述步骤,采用判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件,在判断结果为是时,放弃将指定镜像文件从源存储库中拷贝至目标存储库中的操作,通过在拷贝镜像文件前还判断目标存储库中是否已经存在待拷贝的镜像文件,解决了相关技术中对相同的镜像文件进行重复拷贝而浪费存储资源的问题,进而达到了高效管理镜像文件的效果。
在根据本实施例的可选实施方式中,在目标存储库中不包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件,即在判断结果为否时,还包括:将指定镜像文件拷贝至目标存储库中,并将镜像标识赋值给目标存储库中的指定镜像文件。
在根据本实施例的可选实施方式中,方法还包括:在指定镜像文件发生变化时,更新指定镜像文件的镜像标识。可选的,指定镜像文件发生变化可以但不限于是以下情况:指定镜像文件的数据内容发生变化;指定镜像文件在层次模型或网状模型中的节点位置发生变化。
可选的,在更新发生变化的指定镜像文件的镜像标识之后,还可以将与该指定镜像文件有关系的其他镜像文件也进行更新,并同时更新镜像标识。包括:将所述指定镜像文件更新前的镜像标识对应的镜像文件及其镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的父节点的镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的子节点的镜像标识进行更新。
根据上述可选实施方式,当镜像文件的数据发生改变,比如文件进行了合并(其他文件将数据合并至该文件)或者由父节点变成了叶子节点(即将有虚机写入数据),那该镜像文件跟其他文件的数据就不再一致,无法继续保持镜像关系。可以对此类文件的镜像标识mirror_id做重置操作。重置操作包括,重置自己的mirror_id,重置拥有该mirror_id的其他文件。另外除了对该文件进行重置之外,还需要对该文件的所有子节点进行重置。
在本实施例中还提供了另一种镜像文件的处理方法,图2是根据本发明实施例的另一种镜像文件的处理方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,设置指定镜像文件的镜像标识;
步骤S204,在指定镜像文件发生变化时,更新该指定镜像文件的镜像标识。
可选的,镜像文件发生变化包括:镜像文件的数据内容发生变化、镜像文件在层次模型或网状模型中的节点位置发生变化。
可选的,在更新发生变化的指定镜像文件的镜像标识之后,还可以将与该指定镜像文件有关系的其他镜像文件也进行更新,并同时更新镜像标识。包括:将所述指定镜像文件更新前的镜像标识对应的镜像文件及其镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的父节点的镜像标识进行更新;将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的子节点的镜像标识进行更新。
根据上述可选实施方式,当镜像文件的数据发生改变,比如文件进行了合并(其他文件将数据合并至该文件)或者由父节点变成了叶子节点(即将有虚机写入数据),那该镜像文件跟其他文件的数据就不再一致,无法继续保持镜像关系。可以对此类文件的镜像标识mirror_id做重置操作。重置操作包括,重置自己的mirror_id,重置拥有该mirror_id的其他文件。另外除了对该文件进行重置之外,还需要对该文件的所有子节点进行重置。
可选的,设置镜像文件的镜像标识包括在源存储库和目标存储库中进行设置,分别为:在创建指定镜像文件时,设置与所述指定镜像文件对应的镜像标识;在所述指定镜像文件从源存储库迁移到目标存储库时,将所述指定镜像文件在目标存储库中的镜像标识设置为与所述指定镜像文件在源存储库中的镜像标识相同。
设置文件的镜像标识(mirror_id):文件创建的时候会有一个默认的mirror_id,如果该文件做了一次存储迁移,即在目标存储库上产生了一个新的拷贝,可以将源文件的mirror_id赋值给该拷贝文件。这样利用这个镜像标识,源文件就跟目标存储库上的新文件建立了关联。同样,目标文件如果再次迁移至另一个存储库,那该mirror_id会延续到第三个文件上。可以实现只要是从同一个源复制过来的文件,都会拥有相同的镜像标识。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
在本实施例中还提供了一种镜像文件的处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的一种镜像文件的处理装置的结构框图,如图3所示,该装置包括:
判断模块30,用于判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;
处理模块32,用于在判断结果为是时,放弃将指定镜像文件从源存储库中拷贝至目标存储库中的操作。
图4是根据本发明实施例的另一种镜像文件的处理装置的结构框图,如图4所示,该装置包括:
设置模块40,用于设置指定镜像文件的镜像标识;
更新模块42,用于在所述指定镜像文件发生变化时,更新所述指定镜像文件的镜像标识。
下面结合根据发明的可选实施例进行详细说明:
本可选实施例在虚拟化管理系统现有的存储迁移接口中,增加文件镜像的管理功能。包括文件镜像标识的设置,修改,和重置。可以完善整个存储迁移功能,避免迁移流程正确,但是虚机运行数据不一致这种难以排查的问题。
本实施例中的步骤包括:
S11.设置文件的镜像标识(mirror_id):文件创建的时候会有一个默认的mirror_id,如果该文件做了一次存储迁移,即在目标存储库上产生了一个新的拷贝,管理系统会将源文件的mirror_id赋值给该文件。这样利用这个镜像标识,源文件就跟目标存储库上的新文件建立了关联。同样,目标文件如果再次迁移至另一个存储库,那该mirror_id会延续到第三个文件上。因此只要是从同一个源复制过来的文件,都会拥有相同的镜像标识。
S12.重置文件的镜像标识:当文件的数据发生改变,比如文件进行了合并(其他文件将数据合并至该文件)或者由父节点变成了叶子节点(即将有虚机写入数据),那该文件跟其他文件的数据就不再一致,无法继续保持镜像关系。需要对此类文件的mirror_id做重置操作。重置操作包括,重置自己的mirror_id,重置拥有该mirror_id的其他文件。另外除了对该文件进行重置之外,还需要对该文件的所有子节点进行重置。
S13.存储迁移对镜像标识的判断流程:文件拥有了mirror_id,在迁移的时候就可以使用该mirrorid进行判断,如果目的存储上拥有跟源文件相同mirror_id的文件,那就可以不进行实际的文件拷贝工作,重用已存在的文件。
需要说明的是,上述三个步骤并不存在特定的时序关系。
图5是根据本发明可选实施例的存储迁移的文件变化示意图,如图5所示,其中,VD可以是存储库、磁盘等,f与数字的结合形成与镜像文件对应的镜像标识;图6是根据本发明可选实施例的存储迁移的镜像判断流程图,如图6所示,包括:
S21:虚拟机存储迁移的时候,需要在复制磁盘文件之前查找对方存储库上有没有对应的镜像文件(或者影子文件);
S22:如果该存储库上有源文件的影子文件,则跳过文件拷贝步骤;
S23:如果目标存储库上没有找到影子文件,则需要走文件拷贝流程。并将源文件的mirror_id赋值给副本文件。
图7是根据本发明可选实施例的文件重置查找关联文件的示意图,如图7所示;图8是根据本发明可选实施例的文件重置查找关联文件的流程图,如图8所示,包括:
S31:当文件进行了合并(其他文件将数据合并至该文件)或者由父节点变成了叶子节点(即将有虚机写入数据),那该文件跟其他文件的数据就不再一致,无法继续保持镜像关系。需要重置此类文件的镜像标识。
S32:文件如果有子节点,那该文件所有的子节点也不能再与其他文件有镜像关系了,需要找到他所有的子节点,逐个对其重置镜像标识。
S33:逐个查找引用该文件的所有磁盘(VDI),没有则结束流程。
S34:找到某一个VDI之后,从该VDI的叶子文件开始向上遍历,对每一个文件做重置镜像标识的操作。当遍历到原始的文件之后,则结束该VDI的重置操作,继续查找下一个VDI。直到所有VDI都遍历完,结束流程。
图9是根据本发明可选实施例的单个文件重置镜像标识的流程图,如图9所示,判断分支Y(是),N(否),包括:
S41:遍历所有的存储库,如果没有找到存储库则结束流程;
S42:找到某一个存储库之后,遍历该存储库上的所有文件,找不到则结束文件遍历,继续S41;
S43:找到跟目标文件拥有相同mirror_id的文件,设置该文件的镜像标识为新的id。继续S42;
S44:遍历完所有的存储库之后,还需要将原文件的mirror_id初始化为自己的文件标识file_id。
在本可选实施例中,可以在迁移之后对源文件和副本文件各设置一个镜像标识,那么下一次再次迁移源文件,通过这个标识,就能避免重复拷贝。引入镜像机制之后,还有一个缺陷:当源文件或者副本文件的数据发生改变,那两个文件就不能保持镜像关系了。本可选实施例在引入镜像机制的同时,还对文件之间的镜像关系进行动态管理,文件发生改变能实时修改镜像标识。完美解决了存储迁移过程中的两个关键问题。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;
S2,在判断结果为是时,放弃将指定镜像文件从源存储库中拷贝至目标存储库中的操作。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行在判断结果为是时,放弃将指定镜像文件从源存储库中拷贝至目标存储库中的操作。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种镜像文件的处理方法,其特征在于,包括:
判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;其中,镜像标识用于避免重复拷贝和保持文件之间的镜像关系;
在判断结果为是时,放弃将所述指定镜像文件从源存储库中拷贝至所述目标存储库中的操作;
所述方法还包括:当文件进行了合并或由父节点变成叶子节点时,如果所述文件有子节点,则逐个查找引用所述文件的所有磁盘;找到任一磁盘后,从所述磁盘的叶子文件开始向上遍历,对每一个文件做重置镜像标识的操作;当遍历到原始的文件后,则结束所述磁盘的重置操作,继续查找下一个磁盘,直到所有磁盘都遍历完。
2.根据权利要求1所述的方法,其特征在于,在判断结果为否时,所述方法还包括:
将所述指定镜像文件拷贝至所述目标存储库中,并将所述镜像标识赋值给所述目标存储库中的所述指定镜像文件。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述指定镜像文件发生变化时,更新所述指定镜像文件的镜像标识。
4.根据权利要求3所述的方法,其特征在于,所述指定镜像文件发生变化包括:
所述指定镜像文件的数据内容发生变化;和/或,
所述指定镜像文件在层次模型或网状模型中的节点位置发生变化。
5.根据权利要求3所述的方法,其特征在于,在更新所述指定镜像文件的镜像标识之后,所述方法还包括以下至少之一:
将所述指定镜像文件更新前的镜像标识对应的镜像文件及其镜像标识进行更新;
将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的父节点的镜像标识进行更新;
将与所述指定镜像文件具有相同镜像标识的镜像文件在层次模型或网状模型中的子节点的镜像标识进行更新。
6.一种镜像文件的处理装置,其特征在于,包括:
判断模块,用于判断目标存储库中是否包括与待拷贝的指定镜像文件具有相同镜像标识的镜像文件;其中,镜像标识用于避免重复拷贝和保持文件之间的镜像关系;
处理模块,用于在判断结果为是时,放弃将所述指定镜像文件从源存储库中拷贝至所述目标存储库中的操作;还包括:当文件进行了合并或由父节点变成叶子节点时,如果所述文件有子节点,则逐个查找引用所述文件的所有磁盘;找到任一磁盘后,从所述磁盘的叶子文件开始向上遍历,对每一个文件做重置镜像标识的操作;当遍历到原始的文件后,则结束所述磁盘的重置操作,继续查找下一个磁盘,直到所有磁盘都遍历完。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610303594.2A CN107357691B (zh) | 2016-05-09 | 2016-05-09 | 镜像文件的处理方法及装置 |
PCT/CN2017/080488 WO2017193764A1 (zh) | 2016-05-09 | 2017-04-13 | 镜像文件的处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610303594.2A CN107357691B (zh) | 2016-05-09 | 2016-05-09 | 镜像文件的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107357691A CN107357691A (zh) | 2017-11-17 |
CN107357691B true CN107357691B (zh) | 2022-06-21 |
Family
ID=60266326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610303594.2A Active CN107357691B (zh) | 2016-05-09 | 2016-05-09 | 镜像文件的处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107357691B (zh) |
WO (1) | WO2017193764A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275717B (zh) * | 2019-05-17 | 2024-03-22 | 平安科技(深圳)有限公司 | 私有镜像克隆方法、装置、计算机设备及存储介质 |
CN110851144B (zh) * | 2019-09-06 | 2023-09-29 | 北京京东尚科信息技术有限公司 | 云主机部署方法及装置、计算机可存储介质 |
CN114996226B (zh) * | 2021-11-05 | 2023-03-31 | 荣耀终端有限公司 | 图标检测方法、电子设备、可读存储介质和程序产品 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2321903C2 (ru) * | 2003-08-12 | 2008-04-10 | Пайонир Корпорейшн | Информационный носитель записи, устройство и способ записи для информационного носителя записи, устройство и способ воспроизведения для информационного носителя записи, компьютерная программа для управления записью или воспроизведением и структура данных, включающая в себя сигнал управления |
CN102693302B (zh) * | 2012-05-21 | 2015-04-22 | 浙江省公众信息产业有限公司 | 快速文件比对方法、系统及客户端 |
CN103513999B (zh) * | 2012-06-25 | 2018-04-27 | 联想(北京)有限公司 | 一种更新系统固件的方法及电子设备 |
CN102932415B (zh) * | 2012-09-26 | 2015-04-15 | 东软集团股份有限公司 | 一种镜像文件存储方法及装置 |
CN103227818A (zh) * | 2013-03-27 | 2013-07-31 | 福建伊时代信息科技股份有限公司 | 终端、服务器、文件传输方法、文件存储管理系统和方法 |
CN103595808B (zh) * | 2013-11-20 | 2018-04-24 | 珠海金山办公软件有限公司 | 一种文件更新信息推送方法及装置 |
CN103942292A (zh) * | 2014-04-11 | 2014-07-23 | 华为技术有限公司 | 虚拟机镜像文件处理方法、装置及系统 |
CN105187252A (zh) * | 2015-09-28 | 2015-12-23 | 浪潮(北京)电子信息产业有限公司 | 一种批量部署定制化系统的方法及系统 |
-
2016
- 2016-05-09 CN CN201610303594.2A patent/CN107357691B/zh active Active
-
2017
- 2017-04-13 WO PCT/CN2017/080488 patent/WO2017193764A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2017193764A1 (zh) | 2017-11-16 |
CN107357691A (zh) | 2017-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10725976B2 (en) | Fast recovery using self-describing replica files in a distributed storage system | |
KR102010508B1 (ko) | 소스 코드 파일을 업데이트하는 시스템 및 방법 | |
US8769494B2 (en) | Globally sound and consistent configuration management for distributed datacenter components | |
US10235244B2 (en) | Block level backup of virtual machines for file name level based file search and restoration | |
US7831569B2 (en) | Preserving a query plan cache | |
US8738624B1 (en) | Increasing distributed database capacity | |
US10338910B2 (en) | Multi-tenant upgrading | |
CN106605217B (zh) | 用于将应用从一个站点移动到另一站点的方法和系统 | |
CN105550306A (zh) | 多副本数据的读写方法及系统 | |
US11487727B2 (en) | Resolving versions in an append-only large-scale data store in distributed data management systems | |
US20220215004A1 (en) | Target Environment Data Seeding | |
CN107357691B (zh) | 镜像文件的处理方法及装置 | |
WO2023098462A1 (en) | Improving performance of sql execution sequence in production database instance | |
CN110532243A (zh) | 数据处理方法、装置和电子设备 | |
US11726743B2 (en) | Merging multiple sorted lists in a distributed computing system | |
US10984190B2 (en) | Atom-based sensible synchronization for information indexing | |
CN113296891B (zh) | 基于平台的多场景知识图谱处理方法及装置 | |
US9485308B2 (en) | Zero copy volume reconstruction | |
US10409787B1 (en) | Database migration | |
CN112473145A (zh) | 一种基于游戏引擎的数据处理方法和装置 | |
CN113282551B (zh) | 数据处理方法、系统及设备 | |
CN117130980B (zh) | 一种虚拟机快照管理方法及装置 | |
US11803511B2 (en) | Methods and systems for ordering operations on a file system having a hierarchical namespace | |
US12093744B2 (en) | System and method for instantiating twin applications | |
US20240220102A1 (en) | Dynamically assigning storage objects to compartment constructs of a storage system to reduce application risk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |