基于去重复存储系统中用于可扩展引用管理的系统和方法

文档序号:9929604阅读:272来源:国知局
基于去重复存储系统中用于可扩展引用管理的系统和方法
【专利说明】
[0001] 分案说明
[0002] 本申请属于申请日为2011年8月31日的中国发明专利申请201180050077.4的分案 申请。
技术领域
[0003] 本发明总体上设及备份存储系统,尤其是设及用于协助基于去重复的存储系统中 的资源回收的引用列表。
【背景技术】
[0004] 各种组织机构正在积累并存储大量电子数据。因此,备份存储系统正在增加尺寸 并消耗大量资源。为了应对数量不断增加的数据的存储,去重复技术已经成为在备份存储 系统中使存储利用率最大化的一个重要特征。在典型的去重复系统中,将文件分块为数据 段并且将冗余数据段从系统中删除。然后,在备份存储介质中将唯一的数据段存储为段对 象。随着所存储的段对象数量的增加,段对象的管理要求提高系统资源的共享,运可能影响 去重复系统的整体效率和性能。
[0005] 基于去重复系统的目的是减少需要存储大量数据的大量存储容量。去重复技术已 经成熟到它们可W在数量上实现所存储数据的显著减少。然而,尽管运些技术可W减少所 需要的存储空间,但系统中存储的段对象的数量仍然继续增加。当去重复系统按比例增加 W处理更多的数据负载时,段对象的管理和标引就成为影响系统性能的重要因素。
[0006] 典型地,段对象尺寸小,在一些系统中仅有4千字节化B)。对于存储400兆兆字节 (TB)数据的系统(所有段对象大小为4KB),要维护1000亿个段对象。随着存储需求的增长, 段对象数量上的增加可能产生无法接受的管理开销。因此,需要高可扩展性管理系统来有 效地存储和管理大量段对象。
[0007] 特别具有挑战性的问题包括在从系统删除文件后恢复资源。当删除一个文件时, 不能简单地删除组成该文件的段对象,因为系统所存储的一些其他文件有可能引用了那些 相同段对象的一个或多个。只要没有其他文件使用那些段对象,就可W将它们删除。某种管 理形式需要持续跟踪段对象W及使用运些段对象的所有文件。存在用于管理段对象W及指 向它们的文件的各种技术,当小规模操作时运些技术中的大部分可W工作良好。然而,在应 对大量段对象时运些方法中的很多可能不会有效。
[000引协助资源回收的一个技术是对段对象进行引用计数。引用数存储了一个值,该值 表示有多少文件指向或使用该段。每当一个文件使用段对象时它的引用数就递增,并且当 删除使用该段的文件时递减,最终当该数降为零时可W回收该段。
[0009] 引用计数具有不适合于去重复的一些限制。一个限制是任何丢失或重复更新会不 适当地改变该计数。如果该数偶然减少,当段仍由至少一个文件使用时可能被删除。如果该 数偶然增加,那么甚至在使用该段的所有文件都从系统中删除后可能永远不会删除该段。
[0010] 引用计数的另一个缺点是它不允许识别哪些文件使用一个给定段对象。如果段对 象遭到破坏,备份系统需要知道哪些文件正在使用它,运样可W要求该文件恢复破坏的数 据。然而,引用计数并不维护哪些文件正使用每个特定段对象的列表,运使得破坏数据的恢 复更为困难。
[0011] 可用于协助资源回收的另一个工具是引用列表。维护引用列表不会受到引用计数 的内在缺点的影响。引用列表对错误更新具有更强的免疫力,因为可W捜索该列表W查看 是否已经执行了添加或移除操作。另外,引用列表具有识别哪些文件正使用每个段对象的 能力。然而,引用列表不易于扩展W便处理大量段对像。传统上,根据所存储的每个段对象 在一个细等级上来管理引用列表。随着段对象数量的增加,更新引用列表耗费更长的时段, 运可能降低系统性能。需要一种新方法,W维护可W有效管理大量段对象的引用列表。
[0012] 鉴于W上问题,维护去重复系统中的引用列表的改进方法和机制是需要的。

【发明内容】

[0013] 设想了有效管理基于去重复的存储系统中的引用列表的方法和机制的各种实施 例。在一个实施例中,引用列表可W包括在备份存储介质中存储的每个容器的粗等级条项 组成。由在特定容器内存储的至少一个段对象组成的每个文件可W在该特定容器的引用列 表中具有一个条项。当文件添加到基于去重复的存储系统中或从其删除时,条项可W添加 到引用列表或从其删除。在另一个实施例中,引用列表可W包括用于容器的粗等级条项W 及用于在容器中存储的段对象的细等级条项。引用列表可W在粗等级上进行管理,运样存 储系统的文件的删除可W产生更新的容器条项,无需更新段对象条项。当用于一个特定容 器的粗等级条项的数量减少时,最终该数量将降至一个阔值W下,在该阔值点上服务器可 W切换回在细等级上管理该特定容器的列表。在细等级上管理引用列表可W包括每次从系 统中删除一个文件时就更新段对象条项。
[0014] 在又一个实施例中,引用列表可W将每个条项与一个备份事务相关联,而不是将 每个条项与一个文件相关联。备份事务可W包括由一个单一客户端向基于去重复的存储系 统发送的所有文件W进行一次单一备份操作。引用列表可W包括在备份存储介质中存储的 每个容器的粗等级条项。由一个特定容器中存储的至少一个段对象组成的每个备份事务可 W在该特定容器的引用列表中具有一个条项。在又一个实施例中,引用列表可W具有一个 备份事务所引用的每个容器的粗等级条项W及一个备份事务所引用的每个段对象的细等 级条项。引用列表可W仅在粗等级上进行更新,直到一个特定容器的粗等级条项的数量降 至一个阔值W下,在该阔值点上服务器可W切换回在细等级上管理该特定容器的列表。根 据备份事务组织该引用列表可W进一步减少列表中条项的数量,并且响应于备份事务添加 到系统中或从其中删除而减少需要处理列表的处理时间。
[0015] 鉴于W下本文提出方法的详细描述,运些W及其他特征和优点对本领域的普通技 术人员将变得显而易见。
【附图说明】
[0016] 通过参考W下描述并结合附图,本方法和机制的上述和进一步的优点可W得到更 好的理解,在附图中:
[0017] 图1展示了一种基于去重复的存储系统的一个实施例。
[0018]图2展示了一个备份事务的一个实施例,该备份事务作为段对象存储在备份存储 中的一个容器内。
[0019 ]图3展示了文件及其相关段对象引用的一个实施例。
[0020] 图4展示了一个存储段对象的容器和一个容器引用列表的两个实施例。
[0021] 图5展示了具有粗和细等级条项的一个面向文件的引用列表的一个实施例。
[0022] 图6展示了一种用于维护存储容器引用列表的方法的一个实施例。
[0023] 图7展示了在第一删除操作之后的一个引用列表的一个实施例。
[0024] 图8展示了在第二删除操作之后的一个引用列表的一个实施例。
[0025] 图9展示了一个面向备份的引用列表的一个实施例,该列表具有用于备份事务的 条项。
[0026] 图10是一个总体流程图,该流程图展示了一种用于在文件添加或删除操作之后更 新引用列表的方法的一个实施例。
[0027] 图11是一个总体流程图,该流程图展示了一种用于更新引用列表的方法的一个实 施例。
【具体实施方式】
[0028] 在W下描述中,给出了很多具体细节W透彻理解本文提出的方法和机制。然而,本 领域普通技术人员应当认识到没有运些具体细节也可W实施各种实施例。在一些示例中, 并未详细示出众所周知的结构、部件、信号、计算机程序指令W及技术,W避免混淆本文所 述的方法。
[0029] 应当认识到为了进行简单而清晰的解释,图中所示的元素不一定按照比例绘出。 例如,可W相对于其他元素而放大一些元素的尺寸。另外,在认为适当的时候,参考号在图 例之间重复W表示相应的元素。
[0030] 图1展示了一种基于去重复的存储系统100的一个实施例。该基于去重复的存储系 统100包括客户端110、120和130,运些客户端代表任意数量的移动或静态客户端。尽管该图 例将两个桌上计算机和一个膝上计算机的示例展示为客户端,但包括个人数字助理、蜂窝 电话、智能电话
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1