CN112565373B - 一种镜像文件去重的方法及装置 - Google Patents

一种镜像文件去重的方法及装置 Download PDF

Info

Publication number
CN112565373B
CN112565373B CN202011366834.6A CN202011366834A CN112565373B CN 112565373 B CN112565373 B CN 112565373B CN 202011366834 A CN202011366834 A CN 202011366834A CN 112565373 B CN112565373 B CN 112565373B
Authority
CN
China
Prior art keywords
image file
similarity
target
determining
image files
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
Application number
CN202011366834.6A
Other languages
English (en)
Other versions
CN112565373A (zh
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.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co 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 Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202011366834.6A priority Critical patent/CN112565373B/zh
Publication of CN112565373A publication Critical patent/CN112565373A/zh
Application granted granted Critical
Publication of CN112565373B publication Critical patent/CN112565373B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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/064Management of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种镜像文件去重的方法及装置,所述方法包括:接收对镜像文件去重的触发事件;确定所述镜像文件中,目标镜像文件的特征数组;根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;确定与目标镜像文件相似度大于预设值的其他镜像文件;将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件。采用本申请所提供的方案,在镜像文件之间的相似度大于预设值的情况下即可对镜像文件之间的相同数据进行合并,而无需镜像文件完全相同,从而能够对不完全相同的镜像文件进行去重,提升了去重效果。

Description

一种镜像文件去重的方法及装置
技术领域
本申请涉及分布式存储领域,特别涉及一种镜像文件去重的方法及装置。
背景技术
随着大数据时代的到来,去重技术的重要性越来越明显,去重是指对重复数据进行删除,通过去重,可以降低需要的存储介质数量,进而降低成本。还可以使基于硬盘的存储系统成本低于磁带库,同时提供更好的性能。如果在写入数据的时候就进行数据去重,可以避免一部分的数据写入磁盘,从而提升写入性能。如果在客户端进行数据去重,仅将新增的数据传输到存储系统,还可以减少网络上的数据传输量,进而节省网络带宽。
而在现有的超融合系统中,大部分虚拟机磁盘数据是存放本地或网络存储上的镜像文件,每个镜像文件一般占用几十G以上的磁盘空间。大多数虚拟机可能安装着相同的操作系统,或者是同一个虚拟机克隆出来的。所以大多数镜像文件有着相同的数据,每份数据都各自在自己的镜像文件中保存一份,导致存储系统存在过多的冗余数据,严重影响存储使用效率。现在的去重技术基本都是针对数据块级的,文件级的基本都是小文件,并且要求文件完全一样才能进行去重,显然,虚拟机镜像文件这种大文件完全一样的概率非常低,因此,现有技术中的去重方案并不适合虚拟机镜像文件这种大文件的去重,因此,亟需提供一种镜像文件去重的方法,以实现对不完全相同的镜像文件进行去重,提升去重效果。
发明内容
本申请实施例的目的在于提供一种镜像文件去重的方法及装置,用以实现对不完全相同的镜像文件进行去重,提升去重效果。
为了解决上述技术问题,本申请的实施例采用了如下技术方案:一种镜像文件去重的方法,包括:
接收对镜像文件去重的触发事件;
确定所述镜像文件中,目标镜像文件的特征数组;
根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;
确定与目标镜像文件相似度大于预设值的其他镜像文件;
将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件。
本申请实施例的有益效果在于:根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度,确定与目标镜像文件相似度大于预设值的其他镜像文件;将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件,在镜像文件之间的相似度大于预设值的情况下即可对镜像文件之间的相同数据进行合并,而无需镜像文件完全相同,从而能够对不完全相同的镜像文件进行去重,提升了去重效果。
在一个实施例中,所述确定所述镜像文件中,目标镜像文件的特征数组,包括:
把目标镜像文件分成多个数据块;
确定每个数据块对应的哈希值为数据块的特征值;
根据所述数据块的特征值组成整个镜像文件的特征值数组。
在一个实施例中,所述根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度,包括:
根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,所述相似度矩阵为对称矩阵;
查找矩阵中的一组最大值,确定所述最大值为与所述最大值相应的镜像文件的相似度。
在一个实施例中,将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件之前,所述方法还包括:
将所述相似度矩阵中最大值所在的行和列去掉,形成新的相似度矩阵,并继续判断查找所述新的相似度矩阵中的最大值。
在一个实施例中,所述目标镜像包括所有的镜像文件及所有父镜像文件。
在一个实施例中,所述方法还包括:
当接收到对所述目标镜像文件的调用请求时,调用所述目标镜像文件对应的父镜像文件中的数据,以形成完整的目标镜像文件;
响应对所述目标镜像文件的调用请求。
本申请还提供一种镜像文件去重的装置,包括:
接收模块,用于接收对镜像文件去重的触发事件;
第一确定模块,用于确定所述镜像文件中,目标镜像文件的特征数组;
计算模块,用于根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;
第二确定模块,用于确定与目标镜像文件相似度大于预设值的其他镜像文件;
合并模块,用于将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件。
在一个实施例中,所述第一确定模块,包括:
分割子模块,用于把目标镜像文件分成多个数据块;
第一确定子模块,用于确定每个数据块对应的哈希值为数据块的特征值;
组成子模块,用于根据所述数据块的特征值组成整个镜像文件的特征值数组。
在一个实施例中,所述计算模块,包括:
第二确定子模块,用于根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,所述相似度矩阵为对称矩阵;
查找子模块,用于查找矩阵中的一组最大值,确定所述最大值为与所述最大值相应的镜像文件的相似度。
在一个实施例中,所述装置还包括:
处理模块,用于将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件之前,将所述相似度矩阵中最大值所在的行和列去掉,形成新的相似度矩阵,并继续判断查找所述新的相似度矩阵中的最大值。
在一个实施例中,所述目标镜像包括所有的镜像文件及所有父镜像文件。
在一个实施例中,所述装置还包括:
调用模块,用于当接收到对所述目标镜像文件的调用请求时,调用所述目标镜像文件对应的父镜像文件中的数据,以形成完整的目标镜像文件;
响应模块,用于响应对所述目标镜像文件的调用请求。
附图说明
图1为本申请一实施例中一种镜像文件去重的方法的流程图;
图2为本申请一实施例中一种虚拟机链式镜像文件读写方式的示意图;
图3为本申请一实施例中相似矩阵变化的示意图;
图4为本申请实施例的一种生成父类镜像的示意图;
图5为本申请另一实施例中一种镜像文件去重的方法的流程图;
图6为本申请一实施例中一种镜像文件去重装置的框图;
图7为本申请另一实施例中一种镜像文件去重装置的框图。
具体实施方式
此处参考附图描述本申请的各种方案以及特征。
应理解的是,可以对此处申请的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本申请的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且与上面给出的对本申请的大致描述以及下面给出的对实施例的详细描述一起用于解释本申请的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特性将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式。
当结合附图时,鉴于以下详细说明,本申请的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本申请的具体实施例;然而,应当理解,所申请的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本申请模糊不清。因此,本文所申请的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。
本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本申请的相同或不同实施例中的一个或多个。
图1为本申请实施例的一种镜像文件去重的方法的流程图,该方法包括以下步骤S11-S15:
在步骤S11中,接收对镜像文件去重的触发事件;
在步骤S12中,确定镜像文件中,目标镜像文件的特征数组;
在步骤S13中,根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;
在步骤S14中,确定与目标镜像文件相似度大于预设值的其他镜像文件;
在步骤S15中,将目标镜像文件以及与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件。
本实施例可用于存放镜像文件的设备,具体的,该镜像文件可以是指虚拟机链式镜像文件,图2为虚拟机链式镜像文件读写方式示意图。虚拟机链式镜像文件是由基础镜像文件及其祖先镜像文件组成,虚拟机写入数据只会存储在基础镜像文件,所有祖先镜像文件都是只读的。虚拟机读取时,先查找镜像文件,如果有数据就直接返回,如果没有数据就往上一层查找,如果父镜像文件有数据就直接返回,没有继续往上一层查找。由于镜像文件可以由多个文件链式组成,并且所有祖先镜像文件都是只读的,如果一个祖先镜像文件可以被多个子镜像文件使用,就可以达到重复数据删除。基于此思路,提出一种镜像文件去重的方法:
在本实施例中,接收对镜像文件去重的触发事件;例如,对镜像文件去重的触发事件可以是指接收到对本地所有镜像文件进行去重的指令;又例如,如果设置有根据预设时间间隔对本地镜像文件进行去重的机制,则对镜像文件去重的触发事件可以是指达到对本地镜像文件进行去重的时间的触发事件;再例如,则对镜像文件去重的触发事件可以是指设备中的数据发生更新的事件。
确定镜像文件中,目标镜像文件的特征数组;根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;确定与目标镜像文件相似度大于预设值的其他镜像文件;将目标镜像文件以及与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件。具体可通过如下步骤a1-a8实现:
a1、把一个镜像文件分成多个32K大小的数据块,每个数据块计算一个哈希值当作数据块的特征值,所有数据块的特征值组成整个镜像文件的特征值数组。
a2、假设镜像文件X和镜像文件Y的特征值数据为:X=(x1,x2,...,xD),Y=(y1,y2,...,yD),X和Y的相识度P的计算公式为:
Figure BDA0002803137350000071
其中B为布尔函数:
Figure BDA0002803137350000072
a3、每个镜像文件与其他镜像文件的相识度组成相识度矩阵A:
Figure BDA0002803137350000073
其中Pij=0,i=j
由于i=j时,镜像文件是同一个,这时相识度没有意义,用0表示。由相似度的定义可知,Pij=Pji,所以A是一个对称矩阵。
a4、查找矩阵中的最大值Pij和Pji,这时镜像文件i和镜像文件j就是待合并的镜像文件对。如图3所示,镜像文件2和镜像文件4为最相似的两个镜像文件,成为待合并的镜像文件对。
a5、这时去掉相识度矩阵A中的第i,j行和i,j列,组成一个新的对称矩阵,如图3所示,因为像文件2和镜像文件4已组成文件对,所有跟镜像文件2和镜像文件4相关的相识度都可以删除了,删除完形成新的矩阵。如果剩下的矩阵中的最大值大于0.3(该值为预设值,可以根据需要自行设置),重复步骤a4查找新的镜像对,否则进入步骤a6。
a6:如图4箭头1所示,对所有镜像文件对进行数据去重,相同的数据提取到同一个文件,称为父镜像文件。
a7:如图4箭头2所示,对于所有父镜像,重复步骤a2到步骤a6,提取父镜像文件的父镜像文件,称为祖父镜像文件。一直循环往上提取,直到镜像文件的层数达到指定数量,例如5层。
a8:由图4可知,第一层的数据被一个虚拟机使用,第二层的数据被两个虚拟机使用,第三层的数据被四个虚拟机使用。由此可知,第n层的数据被2n-1个虚拟机共同使用。层数越多,数据消重率越高。
本申请实施例的有益效果在于:根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度,确定与目标镜像文件相似度大于预设值的其他镜像文件;将目标镜像文件以及与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件,在镜像文件之间的相似度大于预设值的情况下即可对镜像文件之间的相同数据进行合并,而无需镜像文件完全相同,从而能够对不完全相同的镜像文件进行去重,提升了去重效果。
在一个实施例中,上述步骤S12可被实施为如下步骤A1-A3:
在步骤A1中,把目标镜像文件分成多个数据块;
在步骤A2中,确定每个数据块对应的哈希值为数据块的特征值;
在步骤A3中,根据数据块的特征值组成整个镜像文件的特征值数组。
本实施例中,把目标镜像文件分成多个数据块;例如,把一个镜像文件分成多个32K大小的数据块,每个数据块计算一个哈希值当作数据块的特征值;根据数据块的特征值组成整个镜像文件的特征值数组。
在一个实施例中,如图5所示,上述步骤S13可被实施为如下步骤S51-S52:
在步骤S51中,根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,相似度矩阵为对称矩阵;
在步骤S52中,查找矩阵中的一组最大值,确定最大值为与最大值相应的镜像文件的相似度。
本实施例中,根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,相似度矩阵为对称矩阵;查找矩阵中的一组最大值,确定最大值为与最大值相应的镜像文件的相似度。
举例而言,假设目标镜像文件X和一其他镜像文件Y的特征值数据为:X=(x1,x2,...,xD),Y=(y1,y2,...,yD),X和Y的相识度P的计算公式为:
Figure BDA0002803137350000091
其中B为布尔函数:
Figure BDA0002803137350000092
根据上述相似度P的计算公式确定目标镜像文件与其他镜像文件的相似度矩阵A:
Figure BDA0002803137350000093
其中Pij=0,i=j
由于i=j时,镜像文件是同一个,这时相识度没有意义,用0表示。由相似度的定义可知,Pij=Pji,所以A是一个对称矩阵。
查找矩阵中的最大值Pij和Pji,这时镜像文件i和镜像文件j就是待合并的镜像文件对。如图3所示,镜像文件2和镜像文件4为最相似的两个镜像文件,成为待合并的镜像文件对。根据图3可知,镜像文件2和镜像文件4的相似度为0.78,其大于预设值0.3。所以,目标镜像文件X和一其他镜像文件Y可以进行去重。
在一个实施例中,在上述步骤S15之前,方法还可被实施为如下步骤:
将相似度矩阵中最大值所在的行和列去掉,形成新的相似度矩阵,并继续判断查找新的相似度矩阵中的最大值。
仍沿用上述示例,去掉相识度矩阵A中的第i,j行和i,j列,组成一个新的对称矩阵,如图3所示,因为像文件2和镜像文件4已组成文件对,所有跟镜像文件2和镜像文件4相关的相识度都可以删除了,删除完形成新的矩阵。如果剩下的矩阵中的最大值大于预设值,则继续查找矩阵中的最大值,并寻找新的文件对,如果剩下的矩阵中的最大值小于预设值,则开始执行上述步骤S15,即对镜像文件对进行数据去重,相同数据提取到同一个父镜像文件中。
在一个实施例中,目标镜像包括所有的镜像文件及所有父镜像文件。
本实施例中,目标镜像包括所有的镜像文件及所有父镜像文件,也就是说,当第一层所有的镜像文件去重操作执行完成之后,将第二层的镜像文件作为目标镜像文件,继续执行上述步骤a1-a6,提取父镜像文件的父镜像文件,称为祖父镜像文件。一直循环往上提取,直到镜像文件的层数达到指定数量,例如5层。
在一个实施例中,方法还可被实施为如下步骤B1-B2:
在步骤B1中,当接收到对目标镜像文件的调用请求时,调用目标镜像文件对应的父镜像文件中的数据,以形成完整的目标镜像文件;
在步骤B2中,响应对目标镜像文件的调用请求。
当文件被调用时,由于其部分数据已经被合并至父镜像文件中,因此,在本实施例中,当接收到对目标镜像文件的调用请求时,调用目标镜像文件对应的父镜像文件中的数据,以形成完整的目标镜像文件;在形成完整的目标镜像文件之后,再去响应对目标镜像文件的调用请求。
图6为本申请实施例的一种镜像文件去重装置的框图,包括以下模块:
接收模块61,用于接收对镜像文件去重的触发事件;
第一确定模块62,用于确定镜像文件中,目标镜像文件的特征数组;
计算模块63,用于根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;
第二确定模块64,用于确定与目标镜像文件相似度大于预设值的其他镜像文件;
合并模块65,用于将目标镜像文件以及与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件。
在一个实施例中,第一确定模块62,包括:
分割子模块71,用于把目标镜像文件分成多个数据块;
第一确定子模块72,用于确定每个数据块对应的哈希值为数据块的特征值;
组成子模块73,用于根据数据块的特征值组成整个镜像文件的特征值数组。
在一个实施例中,计算模块,包括:
第二确定子模块,用于根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,相似度矩阵为对称矩阵;
查找子模块,用于查找矩阵中的一组最大值,确定最大值为与最大值相应的镜像文件的相似度。
在一个实施例中,装置还包括:
处理模块,用于将目标镜像文件以及与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件之前,将相似度矩阵中最大值所在的行和列去掉,形成新的相似度矩阵,并继续判断查找新的相似度矩阵中的最大值。
在一个实施例中,装置还包括:
第三确定模块,用于在相似度矩阵中的最大值小于或等于第二预设值时,确定目标镜像文件已经完成去重过程;其中,目标镜像包括所有的镜像文件及所有父镜像文件。
在一个实施例中,装置还包括:
调用模块,用于当接收到对目标镜像文件的调用请求时,调用目标镜像文件对应的父镜像文件中的数据,以形成完整的目标镜像文件;
响应模块,用于响应对目标镜像文件的调用请求。
以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。

Claims (8)

1.一种镜像文件去重的方法,其特征在于,包括:
接收对镜像文件去重的触发事件;
确定所述镜像文件中,目标镜像文件的特征数组;
根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;
确定与目标镜像文件相似度大于预设值的其他镜像文件;
将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件;
所述根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度,包括:
根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,所述相似度矩阵为对称矩阵;
查找矩阵中的一组最大值,确定所述最大值为与所述最大值相应的镜像文件的相似度。
2.如权利要求1所述的方法,其特征在于,所述确定所述镜像文件中,目标镜像文件的特征数组,包括:
把目标镜像文件分成多个数据块;
确定每个数据块对应的哈希值为数据块的特征值;
根据所述数据块的特征值组成整个镜像文件的特征值数组。
3.如权利要求1所述的方法,其特征在于,将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件之前,所述方法还包括:
将所述相似度矩阵中最大值所在的行和列去掉,形成新的相似度矩阵,并继续判断查找所述新的相似度矩阵中的最大值。
4.如权利要求1所述的方法,其特征在于,所述目标镜像包括所有的镜像文件及所有父镜像文件。
5.如权利要求1-4任意一项所述的方法,其特征在于,所述方法还包括:
当接收到对所述目标镜像文件的调用请求时,调用所述目标镜像文件对应的父镜像文件中的数据,以形成完整的目标镜像文件;
响应对所述目标镜像文件的调用请求。
6.一种镜像文件去重的装置,其特征在于,包括:
接收模块,用于接收对镜像文件去重的触发事件;
第一确定模块,用于确定所述镜像文件中,目标镜像文件的特征数组;
计算模块,用于根据目标镜像文件的特征数组计算每个镜像文件与其他镜像文件之间的相似度;
第二确定模块,用于确定与目标镜像文件相似度大于预设值的其他镜像文件;
合并模块,用于将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件;
所述计算模块,还包括:
第二确定子模块,用于根据目标镜像文件与其他镜像文件的相似度计算公式确定目标镜像文件与其他镜像文件的相似度矩阵,其中,所述相似度矩阵为对称矩阵;
查找子模块,用于查找矩阵中的一组最大值,确定所述最大值为与所述最大值相应的镜像文件的相似度。
7.如权利要求6所述的装置,其特征在于,所述第一确定模块,包括:
分割子模块,用于把目标镜像文件分成多个数据块;
第一确定子模块,用于确定每个数据块对应的哈希值为数据块的特征值;
组成子模块,用于根据所述数据块的特征值组成整个镜像文件的特征值数组。
8.如权利要求6所述的装置,其特征在于,所述装置还包括:
处理模块,用于将所述目标镜像文件以及所述与目标镜像文件相似度大于预设值的其他镜像文件的相同数据合并以形成父镜像文件之前,将所述相似度矩阵中最大值所在的行和列去掉,形成新的相似度矩阵,并继续判断查找所述新的相似度矩阵中的最大值。
CN202011366834.6A 2020-11-27 2020-11-27 一种镜像文件去重的方法及装置 Active CN112565373B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011366834.6A CN112565373B (zh) 2020-11-27 2020-11-27 一种镜像文件去重的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011366834.6A CN112565373B (zh) 2020-11-27 2020-11-27 一种镜像文件去重的方法及装置

Publications (2)

Publication Number Publication Date
CN112565373A CN112565373A (zh) 2021-03-26
CN112565373B true CN112565373B (zh) 2022-12-20

Family

ID=75046598

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011366834.6A Active CN112565373B (zh) 2020-11-27 2020-11-27 一种镜像文件去重的方法及装置

Country Status (1)

Country Link
CN (1) CN112565373B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034684A (zh) * 2012-11-27 2013-04-10 北京航空航天大学 一种基于内容寻址存储的虚拟机镜像存储优化方法
CN108761258A (zh) * 2018-03-29 2018-11-06 深圳众厉电力科技有限公司 基于人工智能和大数据技术的变压器短期过载能力评估系统
CN109725980A (zh) * 2017-10-27 2019-05-07 伊姆西Ip控股有限责任公司 生成镜像标签的方法、设备以及计算机可读介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105260229A (zh) * 2015-10-28 2016-01-20 北京百度网讯科技有限公司 拉取虚拟机镜像文件的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034684A (zh) * 2012-11-27 2013-04-10 北京航空航天大学 一种基于内容寻址存储的虚拟机镜像存储优化方法
CN109725980A (zh) * 2017-10-27 2019-05-07 伊姆西Ip控股有限责任公司 生成镜像标签的方法、设备以及计算机可读介质
CN108761258A (zh) * 2018-03-29 2018-11-06 深圳众厉电力科技有限公司 基于人工智能和大数据技术的变压器短期过载能力评估系统

Also Published As

Publication number Publication date
CN112565373A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
US11132346B2 (en) Information processing method and apparatus
US9727573B1 (en) Out-of core similarity matching
US7257690B1 (en) Log-structured temporal shadow store
US8489612B2 (en) Identifying similar files in an environment having multiple client computers
US10936228B2 (en) Providing data deduplication in a data storage system with parallelized computation of crypto-digests for blocks of host I/O data
US20160350302A1 (en) Dynamically splitting a range of a node in a distributed hash table
CN106682215B (zh) 一种数据处理方法和管理节点
US8583657B2 (en) Method and apparatus for using a hash-partitioned index to access a table that is not partitioned or partitioned independently of the hash partitioned index
CN110888837B (zh) 对象存储小文件归并方法及装置
CN111522502B (zh) 数据去重方法、装置、电子设备及计算机可读存储介质
CN109496292A (zh) 一种磁盘管理方法、磁盘管理装置及电子设备
CN110543495A (zh) 游标遍历存储方法及装置
CN114936188A (zh) 数据处理方法、装置、电子设备及存储介质
CN107506466B (zh) 一种小文件存储方法及系统
CN114610708A (zh) 一种向量数据处理方法及装置、电子设备及存储介质
CN114721594A (zh) 一种分布式存储方法、装置、设备及机器可读存储介质
CN110618790A (zh) 基于重复数据删除的雾存储数据去冗余方法
US7509461B1 (en) Method and apparatus for intelligent buffer cache pre-emption
CN113867627A (zh) 一种存储系统性能优化方法及系统
CN112565373B (zh) 一种镜像文件去重的方法及装置
US8818970B2 (en) Partitioning a directory while accessing the directory
CN111552438A (zh) 一种对象写入的方法、装置、服务器和存储介质
US11163446B1 (en) Systems and methods of amortizing deletion processing of a log structured storage based volume virtualization
US9575679B2 (en) Storage system in which connected data is divided
US20030177131A1 (en) Data processing method, data processing apparatus, and data processing program

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