我想将重复数据删除集成到我正在编写的用于备份 vmware 映像的软件中。我一直无法找到任何适合我认为我需要的东西。似乎有很多完整的解决方案,包括一种或另一种重复数据删除形式。这些包括使用公共或私有云的存储或备份解决方案、专用文件系统、存储网络或设备等。但是,我需要开发自己的解决方案并将重复数据删除集成到其中。我的软件将用 C# 编写,我希望能够调用 API 来告诉它要删除哪些内容。
我所说的重复数据删除类型不是针对另一个图像对一个图像进行重复数据删除——通常是为某物的两个“版本”生成增量或差异备份的方法——或者在维基百科条目中所谓的“客户端备份重复数据删除”重复数据删除,因为我已经有了解决方案,并且想更进一步。
我设想一种方法可以让我在全球范围内以某种方式对数据块进行重复数据删除(即某种形式的全球重复数据删除)。为了全局,我想会有某种形式的中央查找表(例如哈希索引),它会告诉重复数据删除器正在检查的数据的副本已经保存并且不需要再次存储。块可以是文件级(单实例存储或 SIS)或子文件/块级重复数据删除。后者应该更有效(这对于我们的目的来说比处理开销更重要)并且将是我的首选选项,但如果必须,我也可以让 SIS 工作。
正如我上面提到的,我现在已经阅读了很多关于其他人的重复数据删除软件的信息。我不会在这里举例子,因为我不是专门模仿其他人的方法。相反,我一直无法找到程序员的解决方案,并且想知道是否有类似的东西可用。另一种选择是推出我自己的解决方案,但委婉地说,这将是一项相当大的任务。
谢谢。