当前位置: 首页 > 专利查询>微软公司专利>正文

使用索引划分和协调来进行数据去重复制造技术

技术编号:7592546 阅读:208 留言:0更新日期:2012-07-21 08:25
本发明专利技术涉及使用索引划分和协调来进行数据去重复。所公开的主题涉及将散列索引服务的索引划分为子空间索引的数据去重复技术,其中少于整个散列索引服务的索引被高速缓存以节省存储器。该子空间索引被访问以确定数据块是否已经存在或需要被索引和存储。可基于与要索引的数据相关联的准则(诸如文件类型、数据类型、最后使用时间等)将该索引分成各个子空间。还描述了子空间协调,其中检测子空间中的重复条目以从该去重复系统中移除条目和块。子空间协调可在非高峰时间、当更多系统资源可用时执行,而如果需要资源则可中断协调。要协调的子空间可以基于相似度,包括签名的相似度,每个签名紧凑地表示该子空间的散列。

【技术实现步骤摘要】

本专利技术涉及使用索引划分和协调进行数据去重复。
技术介绍
数据去重复(有时也称为数据优化)指的是减少需要被存储在磁盘上或通过网络进行传送的数据的物理字节量,而不会损害原始数据的保真性和完整性,即字节上的减少是无损的并且原始数据可被完全恢复。通过减少存储和/或传送数据所需的资源,数据去重复因此导致(用于存储和网络传输的)硬件成本以及数据管理成本(例如,备份)的节约。随着数字存储的数据的数量增长,这些成本节约变得重要。数据去重复通常使用用于消除持久存储的文件内部及其之间的冗余性的技术的组合。一种技术用于标识一个或多个文件中的数据的相同区域,并在物理上只存储一个唯一区域(块),而与文件相关联地维持对该块的指针。另一技术是例如通过存储经压缩的块来将数据去重复与压缩混合。为了标识这些块,存储这些块的服务器维持在该系统中这些块的散列的散列索引服务。散列不具有位置性(locality),S卩,同一个文件中的各块的块散列是不相关的,对于给定块的内容的任何编辑创建非常不同的(不相关的)散列值。因此,传统的数据库技术, 诸如B树索引,导致索引服务较差的性能。在存储器中维持整个索引提供较好的性能,但是耗费太多资源。服务器存储器资源为其他服务器应用(如,在主数据去重复情形中)所需要,且用于高速缓存。之前的面向备份的数据去重复优化依靠前瞻高速缓存(look-ahead cache)来减少在服务器上访问该索引所使用的资源量。然而,数据去重复不再受限于数据备份的情形, 且发展为像其他存储器设备那样被用作被访问的主数据存储器群集。仅使用前瞻高速缓存来减少资源使用并不是适当的解决方案。
技术实现思路
提供本
技术实现思路
以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些代表性概念。本
技术实现思路
不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在以限制所要求保护的主题的范围的任何方式来使用。简言之,此处所描述的主题的各方面涉及去重复技术,通过该去重复技术将散列索引服务的索引划分为各个子空间索引,以使得一次将少于散列索引服务的所索引的数据集的整个范围加载到存储器中,从而节省可用存储器。当要被去重复的数据被接收并分块(chunk),并且有可能还被压缩时,子空间索引确定对该块计算的散列值是否与主存储器(例如,RAM)高速缓存中的条目的散列值相匹配。如果是,则返回可用于定位现有块的信息,否则该块作为新块存储在块存储中,并且对应于该散列值的条目与对该块的引用相关联地被添加到该子空间索引。在一方面,可基于一个或多个准则来将散列索引服务划分成多个子空间索引,该准则可与要被去重复的数据如何划分相对应。示例分割/划分准则包括数据的文件类型、 数据类型、位置、创建该数据的应用、文件使用模式数据、文件访问模式数据、文件所有者、 文件用户类型、名字空间、文件内容、文件元数据、学习到的准则或自适应准则、或可被推断为该文件的特征的任何其他类型的信息、以及这些的任何组合。在另一方面,可将一个子空间周期性地(或偶尔地)与一个或多个其他子空间进行协调以从是经协调的子空间的子空间中消除任何重复条目,并相应地删除其相关联的 (重复的)块。这种重复的数据块可能跨越子空间出现,因为各子空间可能是被分开地去重复的,直到并且及至协调点。作为协调的一部分,对与重复条目相关联的块的每个引用被更新以引用剩余的块。可以用各种方式来紧凑化(compacted)和/或用新的数据盖写经协调的子空间和从中删除过块的块存储。该子空间和要协调的一个或多个其他子空间可基于类似子空间类型、类似子空间签名、和/或基于该子空间是未经协调的子空间以及其他子空间已在之前与彼此协调过来选择。签名包括子空间散列的紧凑表示,并且可以用多种方式来计算/确定,例如,基于最小散列计算、布隆过滤器(bloom filter)、最小散列和布隆过滤器组合等等。结合附图阅读以下具体实施方式,本专利技术的其他优点会变得显而易见。附图说明作为示例而非限制,在附图中示出了本专利技术,附图中相同的附图标记指示相同或相似的元素,附图中图I是表示被配置为用于使用基于子空间的散列索引服务进行去重复的数据存储服务的示例组件的框图。图2-4是示出在数据去重复中使用的子空间和块存储之间的关系的表示。图5是表示用于数据去重复的示例步骤的流程图,其中少于整个索引的被高速缓存,从而便于基于子空间的去重复。图6是表示用于协调两个子空间以定位与块存储中的等同块相对应的等同条目的示例步骤的流程图。图7是表示其中可实现此处描述的各种实施例的示例性非限制联网环境的框图。图8是表示其中可实现此处所描述各种实施例的一个或多个方面的示例性非限制计算系统或操作环境的框图。具体实施例方式此处描述的技术的各方面一般涉及一种通过将全局散列索引划分为多个子空间而操作的去重复系统。所述子空间中的每一个可被存储在辅助存储设备中,例如,在硬盘上。取决于当前正在使用的数据集,子空间或子空间的一部分可被活动地加载到存储器中, 例如,基于当前系统工作负载、资源可用性、以及哪个子空间是索引数据块所需要的。当一子空间填满时,该子空间可以变为可以用于定位块(例如,作为高速缓存)的只读子空间, 而新的活动子空间被创建以处理新的块。注意,所密封的子空间经常是相同大小的,但不必然如此。此外,不同子空间可被协调以增加去重复的质量(例如,其相应数据块的更高去重复率),并由此增加数据存储服务器的可缩放性。为此目的,考虑被选择来进行协调的两个子空间,其中一个子空间作为源,一个子空间作为目的地。将一个子空间的散列与另一子空间的散列进行对比以寻找等同的块,其中从一个块存储移除任何等同的块、从相应的子空间之一中可能地移除条目、并将对已移除的块的引用更新为指向剩余的块。注意,重复该系统中所有子空间之间的协调操作将最终检测到该系统中的所有的重复,因此最大化从数据去重复获得的节省。在一个方面中,为了预测哪些子空间可彼此良好地协调,协调过程计算每个子空间中的索引的签名。该签名可被数据存储服务器用来标识哪些子空间被选择以进行协调。 例如,此子空间选择过程可首先处理在协调时最可能给出最多空间节省的子空间。因为子空间签名可能非常紧凑,所以在非高峰时间,该数据存储服务器可以能够承受加载所有子空间的签名,以使得它能够最优地标识哪些子空间是好的去重复候选。每个子空间可被分开优化,其中“热”的子空间(其中内容被修改或规则读取)针对性能进行优化,而“冷”的子空间(其中内容包括较旧的快照或不频繁访问的内容)针对数据去重复质量进行优化。 子空间可以在非高峰时间被协调以改善数据去重复性能和/或质量。应当理解的是,此处的任何示例均是非限制的。因此,本专利技术不限制于在此描述的任何具体的实施例、方面、概念、结构、功能或示例。相反,此处所描述的实施例、方面、概念、 结构、功能或示例中的任一个都是非限制性的,并且本专利技术一般能够以在数据处理、数据索引和数据去重复方面提供好处和优点的各种方式来使用。图I示出知晓内容(content-aware)的数据去重复数据存储系统的示例组件,诸如在数据/文件存储服务102中实现。服务102接收数据104 (文件、团块等),且去重复逻辑106处理数据以进行去重复。为此目的,去重复逻辑106向分块模块108提供数据104, 本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/201110445282.html" title="使用索引划分和协调来进行数据去重复原文来自X技术">使用索引划分和协调来进行数据去重复</a>

【技术保护点】

【技术特征摘要】
...

【专利技术属性】
技术研发人员:J·李S·森古普塔R·卡拉赫R·N·德塞P·A·奥尔泰安J·R·本顿
申请(专利权)人:微软公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术