2008年(8065)
分类: 服务器与存储
2008-05-11 10:29:18
从存储数百个 Snapshot 副本仅需极少磁盘空间的独特的 Snapshot™ 技术,到允许系统管理员在运行时扩展和设定卷的 FlexVol®技术,NetApp 一直是高效利用存储的行业先锋.
五月份,NetApp 宣布了一种新的重复数据删除技术,能够大大提高指定磁盘空间可存储的数据量:高级单实例存储 (A-SIS) 重复数据删除。NetApp NearStore® R200 和 NearStore on FAS 系统均可使用该技术(免费!)
重复数据删除能以单个共享数据块为参考寻找相同的数据块并将其替换,从而提高效率。相同的数据块可能属于多个不同的文件或 LUN,或者可能重复出现在同一个文件中。A-SIS 重复数据删除是 NetApp WAFL 文件系统不可或缺的一部分,该系统管理 NetApp FAS 系统上所有存储。因此,不管您运行何种应用程序或如何访问数据,重复数据删除都在"后台"运行,并且开销很低。至于用户能节约多少空间,则取决于数据集和它所包含的重复数据删除量。
A-SIS 重复数据删除如何运作
实质上,A-SIS 重复数据删除采用老式的计算机科学技术-参考计算。以前,WAFL 仅跟踪数据块是否在使用。借助 A-SIS 重复数据删除,它还能跟踪有多少在使用。在目前的实施中,不同文件或同一文件中的单个 WAFL 块可参考多达 256 次。文件并不"知道"它们之间在共享数据-WAFL 内的簿记会在后台管理这些细节。
WAFL 如何确定哪两块可以共享?答案是 WAFL 会为每块计算出"指纹",这是块数据的哈希。具有相同指纹的两个块即可用于共享。
在卷上启用 A-SIS 重复数据删除后,它会为备份卷中所有正在使用的块计算出一个指纹数据库(此过程称为"收集")。完成初步设置后,卷即可用于重复数据删除。
为了不减缓普通文件操作,副本搜索将作为一个单独的批次处理来完成。由于文件系统会在正常使用过程中进行更新,WAFL 将创建描述其数据块更改的日志。该日志不断累积,直到出现以下某种情况:
管理员发布 sis start 命令
sis config 计划中指定的下一次发生
日志更改超出了预定的阈值
这些事件中的任何一件都会触发重复数据删除过程。启动重复数据删除过程后,A-SIS 会使用变更块的指纹作为密钥来给日志排序,然后将排好序的列表与指纹数据库文件合并。一旦两个列表中出现相同的指纹,则可能有两个相同的块可折叠成一个。这种情况下,WAFL 会弃用其中一个块,并用另一个块的参考将其替换。因为文件系统时刻在变,除非两个块确实仍在使用并且含有相同的数据,否则我们当然可采取这一步骤。
A-SIS 重复数据删除实施利用了 WAFL 的某些特殊功能,从而使重复数据删除的成本降到最小。NetApp 很早以前就发现,要确保存储在磁盘上的数据的完整性,应该采用皮带与吊带式 (belt-and-suspenders) 方法。(事实上,最好有几双吊带。)因此,磁盘上的每个数据块都通过校验和得到保护。
A-SIS 使用该校验和作为它的指纹。由于无论如何都会计算指纹,相当于"无消耗",因此不会给系统增加任何负担。且由于 WAFL 绝对不会覆盖正在使用的数据块,因此在闲置数据块之前,"指纹"将保持有效。A-SIS 重复数据删除与 WAFL 的紧密集成也意味着更改日志是一种高效的操作。其结果是 A-SIS 重复数据删除可用于广泛的工作负荷,而不仅是用于备份,其它重复数据删除实施的情况也是如此。