CN103514250A - 一种全局重复数据删除的方法和系统及存储装置 - Google Patents

一种全局重复数据删除的方法和系统及存储装置 Download PDF

Info

Publication number
CN103514250A
CN103514250A CN201310246145.5A CN201310246145A CN103514250A CN 103514250 A CN103514250 A CN 103514250A CN 201310246145 A CN201310246145 A CN 201310246145A CN 103514250 A CN103514250 A CN 103514250A
Authority
CN
China
Prior art keywords
fingerprint value
data
index structure
management node
fingerprint
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.)
Granted
Application number
CN201310246145.5A
Other languages
English (en)
Other versions
CN103514250B (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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201310246145.5A priority Critical patent/CN103514250B/zh
Publication of CN103514250A publication Critical patent/CN103514250A/zh
Application granted granted Critical
Publication of CN103514250B publication Critical patent/CN103514250B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • 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
    • G06F3/0641De-duplication techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种全局重复数据删除的方法和系统及存储装置,该方法包括如下步骤:1.1初始化;1.2接收层将数据流分成多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找与之对应的管理节点,将其发送给管理节点;1.3管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,存在则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;不存在则直接进行更新。系统用来实现上述方法。存储装置包括存储介质和存储控制器,存储控制器包括上述全局重复数据删除的系统。本发明只需要传输数据段的指纹值,不要求传输全部数据段,并通过建立指纹值索引结构和划分指纹值管理范围,大大提升了指纹值交互操作性能。

Description

一种全局重复数据删除的方法和系统及存储装置
技术领域
本发明主要涉及到数据存储领域,特指一种适用于数据存储设备的全局重复数据删除的方法及系统。
背景技术
随着数据量的爆发式增长,存储系统中存储的数据量越来越多,根据IDC的统计,2012年全球数据总量达到上万亿GB,超过95%的数据为非结构化数据;在许多以数据为核心的计算中心里,每天新产生的数据量已经达到100GB甚至1TB。与此同时,新型存储介质及其技术,如闪存(flash memory)、相变存储(phase change memory)等,也在不断发展。作为新型存储介质的典型,闪存存储介质具有密度高、重量轻、能耗低等特点,是一种理想的替代主存储系统中磁盘的存储介质。闪存的最小读写单元是闪存页,当需要从闪存中读取或向闪存中写入数据时,访问单元必须以闪存页为单位。当一个闪存页的内容被修改时,需要将该闪存页擦除后再重新写入数据。闪存的擦除操作延迟较大,通常是闪存页读操作延迟的上十倍。在闪存设备中,写操作总是异地更新,即,新数据总是写入一个新的空白闪存页,然后废除之前的闪存页中的旧数据,以避免擦除操作带来的性能开销。基于闪存存储系统通常具有寿命问题,每个闪存页存在有限的擦除次数,通常上限为1万-100万次,在一个闪存页达到擦除次数上限时,闪存页无法再被访问。
重复数据删除技术能够检测并消除存储数据的冗余副本,有效地减少写入主存储系统的数据量,不仅能有效地降低系统的存储成本,而且能潜在减少对存储介质的写操作,提高存储介质的寿命和系统的访问性能。
在已有的重复数据删除方法中,一个节点/控制器通常负责管理所有数据单元的指纹值,当有数据写操作时,查找该数据单元的指纹值,以确定该数据单元是否存在,如果存在,则将新的数据块指针指向已有的数据单元,而新的数据块不必写入系统。传统重复数据删除技术通常分为两种:相似重删技术和精确重删技术。相似重删技术将连续的数据流划分为多个大数据段,并为每个数据段保存一个特征值;当一个新的数据段需要写入时,系统比较新数据段的特征值是否已经存在,如果存在,则读取该特征值对应的数据段,并检测该数据段与新数据段之间的重复数据。相似重删技术将所有特征值一次性全部读入内存,因此重复数据删除的过程对系统性能影响十分小。然而,相似重删技术只能检测两个数据段之间的重复数据,因此其提高的空间效率有限。相比之下,在精确重删技术中,系统为每个数据单元(如固定的128KB大小或者可变长大小单元)计算指纹值,然后存储在指纹表中。当写入数据时,系统遍历所有的指纹值,以确定是否有重复数据存在,因此,精确重删技术能极为准确地检测出系统中所有重复数据单元,最大化系统的空间利用率。然而,精确重删技术要求每次在写入数据时,遍历所有指纹值,才能检测是否存在相同的指纹值;由于系统存储的指纹值个数通常很多,遍历操作将引入了巨大的时间开销。
在存储系统中,为了提高系统的可扩展性和可用性,系统通常具备多个节点/控制器同时提供服务,而且多个节点/控制器相互交互,提供更大的存储空间和访问性能。在这种主存储系统中采用传统的重复数据删除方法,尽管每个节点/控制器中独立完成数据消冗,但是不能在全局范围内进行重复数据检测,因此也降低了重复数据删除的效率。
为了减少每次实际写入和读出存储系统的数据量,现有技术中也存在一些带有全局重复数据删除的技术方法,这些方法需要存储系统由数据重定向模块和匹配节点组成。当对存储系统写入一个数据段时,数据重定向模块搜索一个与该数据段最相似的已存储的数据段,并确定该相似数据段所处的匹配节点,最后将写入的数据段发送到该匹配节点中,由该匹配节点对该数据段进行重复数据删除操作。该方法仍然存在以下问题:1. 该方法要求数据重定向模块和控制器之间传输所有要写入的数据,才能由控制器来完成重复数据的检测和消冗操作。由于频繁的大段的数据传输将占用大量的控制器带宽,因此该方法将会极大的降低系统的读写访问性能。2. 该方法未对元数据中的指纹值索引进行高效的组织和利用,而读请求需要频繁地访问指纹值索引,因此,在读请求频繁的存储系统中,该方法会降低系统访问性能。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种只需要传输数据段的指纹值,而不要求传输全部数据段,并通过建立指纹值索引结构和划分指纹值管理范围大大提升指纹值交互操作性能的全局重复数据删除的方法和系统及存储装置。
为解决上述技术问题,本发明采用以下技术方案:
一种全局重复数据删除的方法,包括如下步骤:
1.1 将管理层划分成若干个管理节点,为每一个管理节点划分可接收指纹值的范围,并将存储设备或者存储介质上所有已存储数据段的指纹值按照上述范围与相应的管理节点建立唯一的映射关系;每一个管理节点为与其有映射关系的指纹值建立指纹值索引结构,并将所述指纹值索引结构写入存储设备或者存储介质中;
1.2 接收层对接收到的数据流进行分段,得到多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找该写入数据段指纹值所对应的管理节点,将该写入数据段指纹值发送给所对应的管理节点;
1.3 管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
作为本发明的进一步改进,所述步骤1.3中,管理节点进行指纹值索引结构更新的流程为:如果所述写入数据段指纹值已经存在于指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果所述写入数据段指纹值不存在于指纹值索引结构中,则向该指纹值索引结构中插入所述写入数据段指纹值;最后将该指纹值索引结构的更新部分写入存储设备或者存储介质中。
作为本发明的进一步改进,所述步骤1.1中,采用范围划分法来划分管理节点可接收指纹值的范围,即将可接收的指纹值按大小编号,并由管理节点按顺序管理相应的可接收的指纹值;所述步骤1.2中,查找所述写入数据段的指纹值对应的管理节点的方法为范围查找法,确定一个写入数据段的指纹值所处的所述范围,并确定所述范围对应的管理节点。
作为本发明的进一步改进,所述步骤1.1中,采用哈希划分法来划分管理节点可接收指纹值的范围,即先为可接收的指纹值计算哈希值,然后对该哈希值取模,再根据取模的结果与管理节点的编号进行比较,将可接收的指纹值划分到管理节点的编号与该取模结果相等的管理节点管理;其中,取模计算的公式为:指纹值的哈希值 % 管理控制器的个数;所述步骤1.2中,为每个写入数据段的指纹值计算哈希值,并对该哈希值的结果取模计算,找到管理控制器编号与该取模计算结果相等的管理控制器,所述取模计算的公式为:管理控制器编号 = 指纹值的哈希值 % 管理控制器的个数。
作为本发明的进一步改进,所述步骤1.1中的指纹值索引结构以已存储数据段的指纹值或该指纹值的一部分为索引关键字,索引关键字对应的值为该已存储数据段的指纹值对应的索引段,所述索引段中包含与该已存储数据段的指纹值对应的数据段的物理地址和数据段的引用次数;所述指纹值索引结构采用平衡树索引结构或者哈希表索引结构。
作为本发明的进一步改进,所述步骤1.2中,对所述数据流进行分段的方法为固定划分方法,即从所述数据流的开始位置,以固定大小将该数据流分割为具有固定大小的写入数据段。
作为本发明的进一步改进,所述步骤1.2中,对所述数据流进行分段的方法为可变长划分方法,具体步骤为: 
4.1 设置用来选取分段数据的滑动窗口,所述滑动窗口大小的初始值为1,从写入的数据流中未分段部分的起始位置开始选择一个固定大小的数据单元,将该数据单元放入滑动窗口内;
4.2 计算所述滑动窗口内数据内容的哈希值,并计算该哈希值的边界判断值,所述边界判断值的计算公式为:边界判断值 = 数据内容哈希值 % M,其中M为一个预设值;
4.3 如果所述边界判断值不等于预设边界判断值,那么将所述滑动窗口的大小递增,即在该滑动窗口中增加一个固定大小的数据单元,并重复步骤4.2;如果所述边界判断值等于预设的边界判断值,则滑动窗口内的数据内容即为一个写入数据段。
作为本发明的进一步改进,所述步骤1.3中,管理节点会查找每一个写入数据段的指纹值是否已经在其指纹值索引结构中存在;或者,管理节点将若干个写入数据段的指纹值组织成一个集合,然后选取该集合中最大值或者最小值,作为该集合的指纹值,如果该集合的指纹值在所述管理节点的指纹值索引结构中存在,该管理节点再在其指纹索引结构中,依次查找所述集合中的每个值,并根据该集合中的每个值是否都存在决定该值对应的写入数据段是否写入存储设备或存储介质中;如果所述集合的指纹值在所述管理节点的指纹值索引结构中不存在,则所述集合中所有值对应的写入数据段均被写入所述存储设备或存储介质中。
作为本发明的进一步改进,所有所述步骤中,对存储设备或者存储设备的写操作都采用顺序写方式。
作为本发明的进一步改进,所述管理节点和接收层采用同一个控制器,或者采用两个不同的控制器。
本发明进一步提供了一种全局重复数据删除系统,包括:
第一模块(初始化模块),用于将管理层划分成若干个管理节点,为每一个管理节点划分可接收指纹值的范围,并将存储设备或者存储介质上所有已存储数据段的指纹值按照上述范围与相应的管理节点建立唯一的映射关系;每一个管理节点为与其有映射关系的指纹值建立指纹值索引结构,并将所述指纹值索引结构写入存储设备或者存储介质中;
第二模块(接收模块),用于使接收层对接收到的数据流进行分段,得到多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找该写入数据段指纹值所对应的管理节点,将该写入数据段指纹值发送给所对应的管理节点;
第三模块(执行处理模块),用于使管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
作为本发明系统的进一步改进,本发明还包括第四模块(更新模块),用于使管理节点进行指纹值索引结构更新;如果所述写入数据段指纹值已经存在于指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果所述写入数据段指纹值不存在于指纹值索引结构中,则向该指纹值索引结构中插入所述写入数据段指纹值;最后将该指纹值索引结构的更新部分写入存储设备或者存储介质中。
本发明进一步还提供了一种存储装置,包括存储介质和存储控制器,所述存储控制器包括上述的全局重复数据删除系统。
与现有技术相比,本发明的优点在于:
1.采用本发明后,对于任意一个数据流的写操作,接收层和管理节点之间只需要传输相应的指纹值,而不要求传输全部数据段,即可完成全局重复数据删除,避免了大量数据传输对存储系统读写性能的影响。
2.采用本发明后,每个管理节点使用高效的索引结构为指纹值创建指纹值索引结构,管理节点只需要进行有限个索引节点的查找,即可完成指纹值查找操作,在读请求频繁的存储系统中,能够大大提高存储系统的读性能。
3. 采用本发明后,采用范围划分法或哈希划分法划分管理节点管理的可接收指纹值范围,只需采用范围查找法或哈希查找法对指纹值计算,便可直接找出一个与写入数据段指纹值对应的管理节点,无需使用额外的映射表保存指纹值与管理节点之间的对应关系,提高存储系统的访问性能。
4. 采用本发明后,在向存储设备或者存储介质写入数据时,包括管理节点写入指纹值索引结构和接收层写入数据段,都是采用性能较高的顺序写操作,减少了对存储设备或者存储介质的随机写操作,提高了存储系统的读写访问性能及使用寿命。
附图说明
图1是本发明方法的流程示意图。
图2是本发明在一个具体应用实例中实施后的存储系统结构原理示意图。
图3是本发明在一个具体应用实例中实施时的原理示意图。
图4是本发明在具体应用实施例中采用一种指纹值索引结构的原理示意图。
图5是本发明在另一个具体应用实例中实施后的存储系统结构原理示意图。
具体实施方式
以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
如图1所示,本发明的全局重复数据删除的方法,包括如下步骤: 
1.1 将管理层划分成若干个管理节点,为每一个管理节点划分可接收指纹值的范围,并将存储设备或者存储介质上所有已存储数据段的指纹值按照上述范围与相应的管理节点建立唯一的映射关系;每一个管理节点为与其有映射关系的指纹值建立指纹值索引结构,并将指纹值索引结构写入存储设备或者存储介质中;
1.2 接收层对接收到的数据流进行分段,得到多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找该写入数据段指纹值所对应的管理节点,将该写入数据段指纹值发送给所对应的管理节点;
1.3 管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
在上述步骤1.3中,管理节点进行指纹值索引结构更新的流程为:如果写入数据段指纹值已经存在于指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果写入数据段指纹值不存在于指纹值索引结构中,则向该指纹值索引结构中插入写入数据段指纹值;最后将该指纹值索引结构的更新部分写入存储设备或者存储介质中。
如图2所示,为本发明在一个具体应用实例中实施后的存储系统结构原理示意图,以下将以该实例描述本发明的具体实现原理。其中,主机端101是发送读写操作的源主机。存储系统102使用了本发明全局重复数据删除方法,该存储系统包括接收层群104、管理节点群105和存储设备或存储介质群106,其中,接收层群104中可以包括1个或多个接收层,管理节点群105中可以包括1个或多个管理节点,存储设备或者存储介质群106可以包括例如硬盘、磁带驱动器、半导体存储器等单个存储设备或存储介质,也可以包括冗余阵列系统(例如独立磁盘冗余阵列RAID)等多个存储设备组成的装置或者网络附属连接存储系统等网络存储装置。主机端101与存储系统102之间通过网络连接103连接,网络连接包括局域网、广域网、无线网络、IB网络、光纤网络和以太网络或者实现网络通信的其他任何网络。通过网络连接103相互连接之后,主机端101与存储系统102之间互发消息,完成数据读写的操作。
结合图3,在上述实例中,以包含3个接收层和3个管理节点为例,该存储系统包括第一接收层201、第二接收层202、第三接收层203和第一管理节点210、第二管理节点211、第三管理节点212以及存储设备216。
在本实施例中,全局重复数据删除的方法包括以下步骤:
1.1)存储系统初始化步骤,具体的包括:
首先,划分管理节点可接收的指纹值的范围,本实例中,设定可接收的指纹值范围为A~H,划分范围后,第一管理节点210管理指纹值范围为(A,B,C),第二管理节点211管理指纹值范围为(D,E,F),第三管理节点212管理指纹值范围为(G,H),在本示意图中,字母用于区分一个写入数据段的内容,如果两个数据段的字母相同,则两个数据段的内容也相同。
在进行划分管理节点可接收的指纹值的范围时,可以采用范围划分法或者哈希划分法。
当采用范围划分法时,将可接收的指纹值按大小编号,并由管理节点按顺序管理相应的可接收的指纹值,如编号为1的管理节点管理大小为[0,N]的可接收的指纹值,编号为2的管理节点管理大小为[N+1,2N]的可接收的指纹值,依次类推。
当采用哈希划分法时,先为可接收的指纹值计算哈希值,然后对该哈希值取模,再根据取模的结果与管理节点编号进行比较,将可接收的指纹值划分到管理节点编号与该取模结果相等的管理节点管理,其中,取模计算的公式为:指纹值的哈希值 % 管理节点的个数。然后,将存储设备或者存储介质上所有已存储数据段的指纹值按照范围与相应的管理节点建立唯一的映射关系,管理节点为所有与其有映射关系的指纹值建立指纹值索引结构。如图3所示,以第一管理节点210为例,其中,指纹值索引结构208为第一管理节点210上对存储设备上已存在的数据段A和数据段B对应的指纹值A和指纹值B的建立的指纹值索引结构,以此类推。
本实例中,指纹值索引结构以已存储数据段的指纹值(或该指纹值的一部分)为索引关键字,索引关键字对应的值为该已存储数据段的指纹值对应的索引段,索引段中包含与该已存储数据段的指纹值对应的数据段的物理地址和数据段的引用次数。
指纹值索引结构可以采用平衡树索引结构或者哈希表索引结构等高效映射的索引结构。
当采用平衡树索引结构时,将以已存储数据段的指纹值为键值,叶子节点中包含多个索引段。
当采用哈希表索引结构时,每个索引对中键值为已存储数据段的指纹值,值为索引段。
参见图4,为本实施例的指纹值索引结构的示意图。在本实施例中,指纹值索引结构采用的是平衡树索引结构,每一个管理节点都有一个平衡树指纹值索引结构,用于查询该管理节点管理的指纹值。本实例的平衡树为B+树结构。
参见图4,关键字301为已存储数据段的指纹值或者该指纹值的一部分(如该指纹值的前64位)。地址指针302与关键字301对应,保存了一个关键字对应的子节点的物理位置。根节点303、 中间节点304存储了多个关键字和地址指针。
该B+树的叶节点中保存着多个关键字和索引段,如叶节点305包括关键字306和索引段307,在本实施例中,每个索引段表示为<引用次数、物理地址>,对应于一个已存储数据段的数据段,其中,引用次数的值表示该数据段被多少个卷或文件的逻辑地址引用,而物理地址则表示该数据段在存储设备或者存储介质上的存储物理地址。当引用次数为0时,该数据段已经不再被使用,对应的物理地址可以被回收。
最后,将该指纹值索引结构写入存储设备或者存储介质中。以第一管理节点210为例,存储空间219的内容为第一管理节点210在存储设备或介质上写入的指纹值索引结构208。
在本实例中,将指纹值索引结构写入存储设备或者存储介质,采用顺序写的方式,以充分开发存储设备或者存储介质的顺序写访问性能。
在本发明提供的全局重复数据删除方法中,步骤1.1)就是为存储系统进行初始化的步骤,因此在使用本发明提供的全局重复数据删除方法的存储系统中,只需要执行一遍步骤1.1)即可使该存储系统具备使用本发明提供的全局重复数据删除方法的前提条件。当该存储系统的存储设备或者存储介质更换时,步骤1.1)需要重新执行一次。
1.2)找到相应的管理节点步骤,具体包括:
首先,接收层接收主机端写入的数据流,对该数据流进行分段,得到多个写入数据段,并为每个写入数据段计算写入数据段指纹值。如图3所示,以第一接收层201为例,当第一接收层201接收到来自主机端101写入的数据流204时,该接收层将该数据流分成包括5个数据段的数据段集合207,然后第一接收层201为数据段集合207中的每个数据段计算指纹值。
写入数据流分段的方法可以采用固定划分方法或者可变长划分方法。
当采用固定划分方法时,从写入的数据流的开始位置,以固定大小(如64KB)将该数据流分割为具有固定大小的写入数据段;
当采用可变长划分方法时,包含以下步骤: 
4.1)设置用来选取分段数据的滑动窗口,滑动窗口大小的初始值为1,从写入的数据流中未分段部分的起始位置开始选择一个固定大小(如4KB)的数据单元,将该数据单元放入滑动窗口内;
4.2)计算滑动窗口内数据内容的哈希值,并计算该哈希值的边界判断值,边界判断值的计算公式为:边界判断值 = 数据内容哈希值 % M,其中M为一个预设值;
4.3)如果边界判断值不等于预设边界判断值,那么将滑动窗口的大小递增,即在该滑动窗口中增加一个固定大小的数据单元,并重复步骤4.2);如果边界判断值等于预设的边界判断值,则滑动窗口内的数据内容即为一个写入数据段。
在步骤1.2)中,计算写入数据段指纹值的方法采用散列方法,包括MD5、SHA-1、SHA-256等。
然后,接收层查找写入数据段指纹值对应的管理节点,并将该写入数据段指纹值发送给管理节点。如图3所示,第一接收层201为写入数据段集合207中的数据段A和B的指纹值找到第一管理节点210,并发给该管理节点;为写入数据段集合207中的数据段D和E的指纹值找到第二管理节点211,并发给该管理节点;为写入数据段集合207中的数据段H的指纹值找到第三管理节点212,并发给该管理节点。
写入数据段的指纹值找到对应的管理节点的方法可以采用范围查找法或者哈希查找法。
当采用范围查找法时,该查找方法只需要确定一个写入数据段的指纹值所处的范围,并确定范围对应的管理节点,即可找到该写入数据段指纹值对应的管理节点;
当采用哈希查找法时,该查找方法为每个写入数据段的指纹值计算哈希值,并对该哈希值的结果取模计算,找到管理节点编号与该取模计算结果相等的管理节点,取模计算的公式为:管理节点编号 = 指纹值的哈希值 % 管理节点的个数。 
1.3)删除重复数据,写入不重复数据步骤:
管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
步骤1.3)可以采用全局精确重复数据删除或者全局相似重复数据删除方法。
当采用全局精确重复数据删除方法时,管理节点查找每写入数据段的指纹值是否已经在其指纹值索引结构中存在,如果存在,则不要求接收层将写入数据段写入存储设备或存储介质中,否则,要求接收层将写入数据段写入存储设备或介质中;
当采用全局相似重复数据删除方法时,管理节点将若干个写入数据段的指纹值组织成一个集合,然后选取该集合中最大值或者最小值,作为该集合的指纹值,如果该集合的指纹值在管理节点的指纹值索引结构中存在,该管理节点再在其指纹索引结构中,依次查找集合中的每个值,并根据该集合中的每个值是否都存在决定该值对应的写入数据段是否写入存储设备或存储介质中;如果集合的指纹值在管理节点的指纹值索引结构中不存在,则集合中所有值对应的写入数据段均被写入存储设备或存储介质中。
在本实例中,采用的是全局精确重复数据删除方法。如图3所示,第一管理节点210、第二管理节点211、第三管理节点212在分别接收到第一接收层201发送的指纹值后,对比每个指纹值是否在其指纹值索引结构存在,其中指纹值A和指纹值B在第一管理节点210指纹值索引结构中存在,指纹值D和指纹值E在第二管理节点211指纹值索引结构中存在,而指纹值H不存在于第三管理节点212的指纹值索引结构中。则第三管理节点212要求第一接收层201将数据段H的内容写入存储设备和存储介质中。
在本实例中,管理节点查找指纹值是否存在于指纹值索引结构中使用以下步骤:当需要查询一个指纹值关键字对应的索引段时,该管理节点从B+树的根节点开始查询,经过中间节点,最终到达叶子节点;在叶子节点中,采用二分法查找该关键字对应的索引段是否存在;如果存在,则该指纹值对应的数据段内容已经在存在于存储设备或者存储介质中,并且可以从该索引段中获取数据段的物理地址。
在本实例中,接收层直接将该数据段写入存储设备或者存储介质均以顺序写的方式写入存储设备或者存储介质中,以充分开发存储设备或者存储介质的顺序写访问性能。
本实例中更新管理节点中的指纹值索引结构步骤,具体包括:
管理节点更新其指纹值索引结构,如果写入数据段指纹值已经存在于该指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果写入数据段的指纹值不存在于该指纹值索引结构中,则向该指纹值索引结构中插入写入数据段的指纹值;将该指纹值索引结构的更新部分写入存储设备或者存储介质中。在本实例中,步骤1.3)结束后,第一管理节点210、第二管理节点211、第三管理节点212均需要更新其指纹值索引结构,由于指纹值A和指纹值B已存在于第一管理节点210的指纹值索引结构中,则将该结构中指纹值A和指纹值B对应的索引段中的引用次数递增,同样将第二管理节点211的指纹值索引结构中指纹值D和指纹值E对应的索引段中的引用次数递增;由于指纹值H不存在于第三管理节点212的指纹值索引结构中,需要将指纹值H插入到该指纹值索引结构中。各管理节点更新完其指纹值索引结构后,将该结构更新部分写入存储设备中。
本实例在更新指纹值索引结构时,所有被更新的索引结构的一部分均以顺序写的方式写入存储设备或者存储介质中,以充分开发存储设备或者存储介质的顺序写访问性能。
根据采用控制器的职能可以分为带内交互方式或带外交互方式两种:带内交互方式中,一个控制器要么只作为接收控制器,要么只作为管理控制器;带外交互方式中,一个控制器既可以作为接收控制器,也可以作为管理控制器。
本实施例中,为带内交互方式,一个控制器要么只作为接收控制器,要么只作为管理控制器。即,管理节点采用一个管理控制器,接收层采用接收控制器。
如图5所示,为另外一种采用本发明后的应用实例,其采用带外交互方式,管理节点和接收层共用为一个控制器。
本发明进一步提供一种用来实施上述方法的全局重复数据删除系统,包括: 
第一模块,用于将管理层划分成若干个管理节点,为每一个管理节点划分可接收指纹值的范围,并将存储设备或者存储介质上所有已存储数据段的指纹值按照上述范围与相应的管理节点建立唯一的映射关系;每一个管理节点为与其有映射关系的指纹值建立指纹值索引结构,并将指纹值索引结构写入存储设备或者存储介质中;
第二模块,用于使接收层对接收到的数据流进行分段,得到多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找该写入数据段指纹值所对应的管理节点,将该写入数据段指纹值发送给所对应的管理节点;
第三模块,用于使管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
本实施中,还进一步包括第四模块,用于使管理节点进行指纹值索引结构更新;如果写入数据段指纹值已经存在于指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果写入数据段指纹值不存在于指纹值索引结构中,则向该指纹值索引结构中插入写入数据段指纹值;最后将该指纹值索引结构的更新部分写入存储设备或者存储介质中。
本发明进一步还提供了一种存储装置,包括存储介质和存储控制器,存储控制器包括上述的全局重复数据删除系统。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (13)

1.一种全局重复数据删除的方法,其特征在于,包括如下步骤:
1.1 将管理层划分成若干个管理节点,为每一个管理节点划分可接收指纹值的范围,并将存储设备或者存储介质上所有已存储数据段的指纹值按照上述范围与相应的管理节点建立唯一的映射关系;每一个管理节点为与其有映射关系的指纹值建立指纹值索引结构,并将所述指纹值索引结构写入存储设备或者存储介质中;
1.2 接收层对接收到的数据流进行分段,得到多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找该写入数据段指纹值所对应的管理节点,将该写入数据段指纹值发送给所对应的管理节点;
1.3 管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
2.根据权利要求1所述的全局重复数据删除的方法,其特征在于,所述步骤1.3中,管理节点进行指纹值索引结构更新的流程为:如果所述写入数据段指纹值已经存在于指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果所述写入数据段指纹值不存在于指纹值索引结构中,则向该指纹值索引结构中插入所述写入数据段指纹值;最后将该指纹值索引结构的更新部分写入存储设备或者存储介质中。
3.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于:
所述步骤1.1中,采用范围划分法来划分管理节点可接收指纹值的范围,即将可接收的指纹值按大小编号,并由管理节点按顺序管理相应的可接收的指纹值;
所述步骤1.2中,查找所述写入数据段的指纹值对应的管理节点的方法为范围查找法,确定一个写入数据段的指纹值所处的所述范围,并确定所述范围对应的管理节点。
4.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,
所述步骤1.1中,采用哈希划分法来划分管理节点可接收指纹值的范围,即先为可接收的指纹值计算哈希值,然后对该哈希值取模,再根据取模的结果与管理节点的编号进行比较,将可接收的指纹值划分到管理节点的编号与该取模结果相等的管理节点管理;其中,取模计算的公式为:指纹值的哈希值 % 管理控制器的个数;
所述步骤1.2中,为每个写入数据段的指纹值计算哈希值,并对该哈希值的结果取模计算,找到管理控制器编号与该取模计算结果相等的管理控制器,所述取模计算的公式为:管理控制器编号 = 指纹值的哈希值 % 管理控制器的个数。
5.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,所述步骤1.1中的指纹值索引结构以已存储数据段的指纹值或该指纹值的一部分为索引关键字,索引关键字对应的值为该已存储数据段的指纹值对应的索引段,所述索引段中包含与该已存储数据段的指纹值对应的数据段的物理地址和数据段的引用次数;所述指纹值索引结构采用平衡树索引结构或者哈希表索引结构。
6.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,所述步骤1.2中,对所述数据流进行分段的方法为固定划分方法,即从所述数据流的开始位置,以固定大小将该数据流分割为具有固定大小的写入数据段。
7.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,所述步骤1.2中,对所述数据流进行分段的方法为可变长划分方法,具体步骤为: 
4.1 设置用来选取分段数据的滑动窗口,所述滑动窗口大小的初始值为1,从写入的数据流中未分段部分的起始位置开始选择一个固定大小的数据单元,将该数据单元放入滑动窗口内;
4.2 计算所述滑动窗口内数据内容的哈希值,并计算该哈希值的边界判断值,所述边界判断值的计算公式为:边界判断值 = 数据内容哈希值 % M,其中M为一个预设值;
4.3 如果所述边界判断值不等于预设边界判断值,那么将所述滑动窗口的大小递增,即在该滑动窗口中增加一个固定大小的数据单元,并重复步骤4.2;如果所述边界判断值等于预设的边界判断值,则滑动窗口内的数据内容即为一个写入数据段。
8.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,所述步骤1.3中,管理节点会查找每一个写入数据段的指纹值是否已经在其指纹值索引结构中存在;或者,管理节点将若干个写入数据段的指纹值组织成一个集合,然后选取该集合中最大值或者最小值,作为该集合的指纹值,如果该集合的指纹值在所述管理节点的指纹值索引结构中存在,该管理节点再在其指纹索引结构中,依次查找所述集合中的每个值,并根据该集合中的每个值是否都存在决定该值对应的写入数据段是否写入存储设备或存储介质中;如果所述集合的指纹值在所述管理节点的指纹值索引结构中不存在,则所述集合中所有值对应的写入数据段均被写入所述存储设备或存储介质中。
9.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,所有所述步骤中,对存储设备或者存储设备的写操作都采用顺序写方式。
10.根据权利要求1或2所述的全局重复数据删除的方法,其特征在于,所述管理节点和接收层采用同一个控制器,或者采用两个不同的控制器。
11.一种全局重复数据删除系统,其特征在于,包括: 
第一模块,用于将管理层划分成若干个管理节点,为每一个管理节点划分可接收指纹值的范围,并将存储设备或者存储介质上所有已存储数据段的指纹值按照上述范围与相应的管理节点建立唯一的映射关系;每一个管理节点为与其有映射关系的指纹值建立指纹值索引结构,并将所述指纹值索引结构写入存储设备或者存储介质中;
第二模块,用于使接收层对接收到的数据流进行分段,得到多个写入数据段,为每个写入数据段计算写入数据段指纹值,并查找该写入数据段指纹值所对应的管理节点,将该写入数据段指纹值发送给所对应的管理节点;
第三模块,用于使管理节点判断收到的写入数据段指纹值是否已经在指纹值索引结构中存在,如果不存在,则由接收层直接将该写入数据段写入存储设备或者存储介质中,并进行指纹值索引结构的更新;如果已存在,则直接进行指纹值索引结构的更新。
12.根据权利要求11所述的全局重复数据删除的系统,其特征在于,还包括第四模块,用于使管理节点进行指纹值索引结构更新;如果所述写入数据段指纹值已经存在于指纹值索引结构中,则将该指纹值索引结构中对应的指纹值的引用次数递增;如果所述写入数据段指纹值不存在于指纹值索引结构中,则向该指纹值索引结构中插入所述写入数据段指纹值;最后将该指纹值索引结构的更新部分写入存储设备或者存储介质中。
13.一种存储装置,包括存储介质和存储控制器,其特征在于,所述存储控制器包括权利要求11或12所述的全局重复数据删除系统。
CN201310246145.5A 2013-06-20 2013-06-20 一种全局重复数据删除的方法和系统及存储装置 Active CN103514250B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310246145.5A CN103514250B (zh) 2013-06-20 2013-06-20 一种全局重复数据删除的方法和系统及存储装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310246145.5A CN103514250B (zh) 2013-06-20 2013-06-20 一种全局重复数据删除的方法和系统及存储装置

Publications (2)

Publication Number Publication Date
CN103514250A true CN103514250A (zh) 2014-01-15
CN103514250B CN103514250B (zh) 2017-04-26

Family

ID=49896977

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310246145.5A Active CN103514250B (zh) 2013-06-20 2013-06-20 一种全局重复数据删除的方法和系统及存储装置

Country Status (1)

Country Link
CN (1) CN103514250B (zh)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914522A (zh) * 2014-03-20 2014-07-09 电子科技大学 一种应用于云存储重复数据删除的数据块合并方法
CN103942292A (zh) * 2014-04-11 2014-07-23 华为技术有限公司 虚拟机镜像文件处理方法、装置及系统
CN103970875A (zh) * 2014-05-15 2014-08-06 华中科技大学 一种并行重复数据删除方法
CN104216666A (zh) * 2014-09-03 2014-12-17 浪潮(北京)电子信息产业有限公司 一种管理磁盘数据写入的方法及装置
CN104394091A (zh) * 2014-12-04 2015-03-04 西南科技大学 一种基于均匀采样的网络冗余流量识别方法
CN104933010A (zh) * 2014-03-18 2015-09-23 华为技术有限公司 一种重复数据删除方法和装置
CN105930101A (zh) * 2016-05-04 2016-09-07 中国人民解放军国防科学技术大学 一种基于闪存固态盘的弱指纹重复数据删除机制
CN105955675A (zh) * 2016-06-22 2016-09-21 南京邮电大学 一种用于去中心云环境的重复数据删除系统及方法
CN106383670A (zh) * 2016-09-21 2017-02-08 华为技术有限公司 一种数据处理方法及存储设备
CN106407226A (zh) * 2015-07-31 2017-02-15 华为技术有限公司 一种数据处理方法、备份服务器及存储系统
CN106649556A (zh) * 2016-11-08 2017-05-10 深圳市中博睿存科技有限公司 基于分布式文件系统的多层重复数据删除方法及装置
WO2017113123A1 (zh) * 2015-12-29 2017-07-06 华为技术有限公司 重复数据删除方法及存储设备
CN106951192A (zh) * 2017-03-25 2017-07-14 广州硕点电子科技有限公司 一种数据存储方法、装置及系统
CN107193503A (zh) * 2017-05-27 2017-09-22 杭州宏杉科技股份有限公司 一种数据重删方法及存储设备
CN107704472A (zh) * 2016-08-09 2018-02-16 华为技术有限公司 一种查找数据块的方法及装置
CN108073521A (zh) * 2016-11-11 2018-05-25 深圳市创梦天地科技有限公司 一种数据去重的方法和系统
CN109189349A (zh) * 2018-10-16 2019-01-11 深圳忆联信息系统有限公司 一种提升固态硬盘复写性能的方法及其系统
CN109416681A (zh) * 2016-08-29 2019-03-01 国际商业机器公司 使用幽灵指纹进行工作负载优化的重复数据删除
CN110109920A (zh) * 2019-03-19 2019-08-09 咪咕文化科技有限公司 数据比对方法及服务器
CN110569245A (zh) * 2019-09-10 2019-12-13 天津理工大学 重复数据删除系统中基于强化学习的指纹索引预取方法
CN110727654A (zh) * 2019-10-24 2020-01-24 北京锐安科技有限公司 分布式系统的数据提取方法、装置、服务器和存储介质
CN111008301A (zh) * 2019-12-19 2020-04-14 新华智云科技有限公司 一种以图搜视频的方法
CN111338569A (zh) * 2020-02-16 2020-06-26 西安奥卡云数据科技有限公司 一种基于直接映射的对象存储后端优化方法
CN111338568A (zh) * 2020-02-16 2020-06-26 西安奥卡云数据科技有限公司 一种数据逻辑位置映射方法
CN111538465A (zh) * 2020-07-07 2020-08-14 南京云信达科技有限公司 一种基于Linux高性能数据重删方法
WO2020192627A1 (zh) * 2019-03-22 2020-10-01 华为技术有限公司 一种分块方法及其装置
CN112148217A (zh) * 2020-09-11 2020-12-29 北京浪潮数据技术有限公司 全闪存储系统的重删元数据的缓存方法、装置及介质
US20220188339A1 (en) * 2020-12-16 2022-06-16 Electronics And Telecommunications Research Institute Network environment synchronization apparatus and method
WO2023246754A1 (zh) * 2022-06-24 2023-12-28 华为技术有限公司 一种数据重删方法及相关系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100114833A1 (en) * 2008-10-31 2010-05-06 Netapp, Inc. Remote office duplication
CN101788976A (zh) * 2010-02-10 2010-07-28 北京播思软件技术有限公司 一种基于内容的文件分割方法
US8407186B1 (en) * 2009-03-31 2013-03-26 Symantec Corporation Systems and methods for data-selection-specific data deduplication

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100114833A1 (en) * 2008-10-31 2010-05-06 Netapp, Inc. Remote office duplication
US8407186B1 (en) * 2009-03-31 2013-03-26 Symantec Corporation Systems and methods for data-selection-specific data deduplication
CN101788976A (zh) * 2010-02-10 2010-07-28 北京播思软件技术有限公司 一种基于内容的文件分割方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DEEPAVALI BHAGWAT ET AL.: "Extreme Binning: Scalable, Parallel Deduplication for Chunk-based File Backup", 《IN PROCEEDINGS OF THE 17TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON MODELLING,ANALYSIS AND SIMULATION OF COMPUTER AND TELECOMMUNICATION SYSTEMS》 *
马建庭: "基于重复数据删除的多用户文件备份系统", 《计算机工程与设计》 *

Cited By (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104933010A (zh) * 2014-03-18 2015-09-23 华为技术有限公司 一种重复数据删除方法和装置
CN103914522A (zh) * 2014-03-20 2014-07-09 电子科技大学 一种应用于云存储重复数据删除的数据块合并方法
CN103942292A (zh) * 2014-04-11 2014-07-23 华为技术有限公司 虚拟机镜像文件处理方法、装置及系统
CN103970875A (zh) * 2014-05-15 2014-08-06 华中科技大学 一种并行重复数据删除方法
CN103970875B (zh) * 2014-05-15 2017-02-15 华中科技大学 一种并行重复数据删除方法和系统
CN104216666A (zh) * 2014-09-03 2014-12-17 浪潮(北京)电子信息产业有限公司 一种管理磁盘数据写入的方法及装置
CN104394091A (zh) * 2014-12-04 2015-03-04 西南科技大学 一种基于均匀采样的网络冗余流量识别方法
CN104394091B (zh) * 2014-12-04 2017-07-18 西南科技大学 一种基于均匀采样的网络冗余流量识别方法
CN106407226A (zh) * 2015-07-31 2017-02-15 华为技术有限公司 一种数据处理方法、备份服务器及存储系统
CN107430602B (zh) * 2015-12-29 2020-05-08 华为技术有限公司 重复数据删除方法及存储设备
US10613976B2 (en) 2015-12-29 2020-04-07 Huawei Technologies Co., Ltd. Method and storage device for reducing data duplication
WO2017113123A1 (zh) * 2015-12-29 2017-07-06 华为技术有限公司 重复数据删除方法及存储设备
CN107430602A (zh) * 2015-12-29 2017-12-01 华为技术有限公司 重复数据删除方法及存储设备
CN105930101A (zh) * 2016-05-04 2016-09-07 中国人民解放军国防科学技术大学 一种基于闪存固态盘的弱指纹重复数据删除机制
CN105955675A (zh) * 2016-06-22 2016-09-21 南京邮电大学 一种用于去中心云环境的重复数据删除系统及方法
CN105955675B (zh) * 2016-06-22 2018-11-09 南京邮电大学 一种用于去中心云环境的重复数据删除系统及方法
CN107704472B (zh) * 2016-08-09 2020-07-24 华为技术有限公司 一种查找数据块的方法及装置
CN107704472A (zh) * 2016-08-09 2018-02-16 华为技术有限公司 一种查找数据块的方法及装置
CN109416681B (zh) * 2016-08-29 2022-03-18 国际商业机器公司 使用幽灵指纹进行工作负载优化的重复数据删除
CN109416681A (zh) * 2016-08-29 2019-03-01 国际商业机器公司 使用幽灵指纹进行工作负载优化的重复数据删除
CN106383670A (zh) * 2016-09-21 2017-02-08 华为技术有限公司 一种数据处理方法及存储设备
CN106383670B (zh) * 2016-09-21 2020-02-14 华为技术有限公司 一种数据处理方法及存储设备
CN106649556A (zh) * 2016-11-08 2017-05-10 深圳市中博睿存科技有限公司 基于分布式文件系统的多层重复数据删除方法及装置
CN108073521A (zh) * 2016-11-11 2018-05-25 深圳市创梦天地科技有限公司 一种数据去重的方法和系统
CN108073521B (zh) * 2016-11-11 2021-10-08 深圳市创梦天地科技有限公司 一种数据去重的方法和系统
CN106951192A (zh) * 2017-03-25 2017-07-14 广州硕点电子科技有限公司 一种数据存储方法、装置及系统
CN107193503A (zh) * 2017-05-27 2017-09-22 杭州宏杉科技股份有限公司 一种数据重删方法及存储设备
CN107193503B (zh) * 2017-05-27 2020-05-29 杭州宏杉科技股份有限公司 一种数据重删方法及存储设备
CN109189349A (zh) * 2018-10-16 2019-01-11 深圳忆联信息系统有限公司 一种提升固态硬盘复写性能的方法及其系统
CN110109920A (zh) * 2019-03-19 2019-08-09 咪咕文化科技有限公司 数据比对方法及服务器
WO2020192627A1 (zh) * 2019-03-22 2020-10-01 华为技术有限公司 一种分块方法及其装置
US11755540B2 (en) 2019-03-22 2023-09-12 Huawei Technologies Co., Ltd. Chunking method and apparatus
CN110569245A (zh) * 2019-09-10 2019-12-13 天津理工大学 重复数据删除系统中基于强化学习的指纹索引预取方法
CN110727654A (zh) * 2019-10-24 2020-01-24 北京锐安科技有限公司 分布式系统的数据提取方法、装置、服务器和存储介质
CN110727654B (zh) * 2019-10-24 2022-02-18 北京锐安科技有限公司 分布式系统的数据提取方法、装置、服务器和存储介质
CN111008301A (zh) * 2019-12-19 2020-04-14 新华智云科技有限公司 一种以图搜视频的方法
CN111008301B (zh) * 2019-12-19 2023-08-15 新华智云科技有限公司 一种以图搜视频的方法
CN111338568B (zh) * 2020-02-16 2020-11-06 西安奥卡云数据科技有限公司 一种数据逻辑位置映射方法
CN111338569A (zh) * 2020-02-16 2020-06-26 西安奥卡云数据科技有限公司 一种基于直接映射的对象存储后端优化方法
CN111338568A (zh) * 2020-02-16 2020-06-26 西安奥卡云数据科技有限公司 一种数据逻辑位置映射方法
CN111538465A (zh) * 2020-07-07 2020-08-14 南京云信达科技有限公司 一种基于Linux高性能数据重删方法
CN111538465B (zh) * 2020-07-07 2020-10-23 南京云信达科技有限公司 一种基于Linux高性能数据重删方法
CN112148217A (zh) * 2020-09-11 2020-12-29 北京浪潮数据技术有限公司 全闪存储系统的重删元数据的缓存方法、装置及介质
CN112148217B (zh) * 2020-09-11 2023-12-22 北京浪潮数据技术有限公司 全闪存储系统的重删元数据的缓存方法、装置及介质
US20220188339A1 (en) * 2020-12-16 2022-06-16 Electronics And Telecommunications Research Institute Network environment synchronization apparatus and method
WO2023246754A1 (zh) * 2022-06-24 2023-12-28 华为技术有限公司 一种数据重删方法及相关系统

Also Published As

Publication number Publication date
CN103514250B (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
CN103514250A (zh) 一种全局重复数据删除的方法和系统及存储装置
US11016955B2 (en) Deduplication index enabling scalability
US9021189B2 (en) System and method for performing efficient processing of data stored in a storage node
US9092321B2 (en) System and method for performing efficient searches and queries in a storage node
US8805796B1 (en) Deduplicating sets of data blocks
US8275970B2 (en) Optimizing write traffic to a disk
US20180173731A1 (en) Storage system deduplication
US20130262758A1 (en) Systems and Methods for Tracking Block Ownership
US10037161B2 (en) Tiered storage system, storage controller, and method for deduplication and storage tiering
US8538933B1 (en) Deduplicating range of data blocks
US9842114B2 (en) Peer to peer network write deduplication
US9977600B1 (en) Optimizing flattening in a multi-level data structure
US20160350007A1 (en) Storage apparatus and method for autonomous space compaction
CN104395904A (zh) 高效的数据对象存储和检索
CN103516369A (zh) 一种自适应数据压缩和解压缩的方法和系统及存储装置
US20180253252A1 (en) Storage system
US20110246731A1 (en) Backup system and backup method
WO2018205151A1 (zh) 数据更新方法和存储装置
US9984123B2 (en) Reducing resource consumption of a similarity index in data deduplication
US11334523B2 (en) Finding storage objects of a snapshot group pointing to a logical page in a logical address space of a storage system
CN102915340A (zh) 一种扩展的基于b+树对象文件系统
CN103229164A (zh) 数据访问方法和装置
WO2010131373A1 (en) Storage subsystem
CN102737068A (zh) 一种用于对检索数据进行缓存管理的方法与设备
US20220284055A1 (en) Methods for performing input-output operations in a storage system using artificial intelligence and devices thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant