重复数据删除框架?

时间:2011-11-16 15:26:32

标签: .net backup vmware deduplication

我想将重复数据删除技术集成到我正在编写的软件中以备份vmware映像。我找不到任何适合我认为我需要的东西。似乎有很多完整的解决方案,包括一种形式的重复数据删除或其他形式。这些包括使用公共云或私有云,专用文件系统,存储网络或设备等的存储或备份解决方案。但是,我需要开发自己的解决方案并将重复数据删除集成到其中。我的软件将用C#编写,我希望能够调用API来告诉它重复数据删除。

我所说的重复数据删除的类型不是将一个映像与另一个映像重复删除 - 通常是用于生成某个东西的两个“版本”的增量备份或差异备份的方法 - 或者称为“客户端备份重复数据删除”维基百科在data deduplication上的条目,因为我已经有了解决方案,并希望更进一步。

我设想了一种方法,允许我在某种程度上在全球范围内(即某种形式的global deduplication)重复数据删除。为了全球化,我想会有一个某种类型的中央查找表(例如哈希索引),它会告诉推导者正在检查的数据的副本已经被保存而不需要再次存储。这些块可以是文件级(单实例存储或SIS)或子文件/块级重复数据删除。后者应该更有效率(对于我们的目的而言,比处理开销更重要)并且是我的首选选项,但如果必须的话,我也可以使SIS工作。

正如我上面提到的,我现在已经做了很多关于其他人进行重复数据删除的软件的阅读。我不会在这里引用例子,因为我并没有特别模仿别人的方法。相反,我无法找到程序员的解决方案,并想知道是否有类似的可用。替代方案是推出我自己的解决方案,但这是一个相当大的任务,温和地说。

感谢。

1 个答案:

答案 0 :(得分:2)

您所描述的全局重复数据删除通常在大多数典型的虚拟机备份程序之外处理,因为CBT已经告诉您VM中更改了哪些块,因此您不必每次都进行完整备份。全局重复数据删除也往往是资源密集型的,因此大多数人只会获得Data Domain而是利用专用,配置和优化的硬件(SSD)和软件(自定义文件系统,可变长度重复数据删除)来进行重复数据删除。可以想象,您正在创建的备份程序可以利用CBT和Data Domain的产品,以某种商用备份软件已经能够完成的方式,如[Veeam] [3]。有关Data Domain重复数据删除策略的更多信息([可变长度段] [4])。

好吧,我不得不删除我的两个网址发布这个答案,因为显然我没有足够的代表... w / e