Windows Server 2012 R2将356GB重复数据删除到1.32GB


13

我正在尝试在Server 2012 R2存储空间上进行重复数据删除。昨晚我让它运行了第一个重复数据删除优化,我很高兴地看到它声称减少了340GB。

在此处输入图片说明

但是,我知道这太过真实了。在该驱动器上,100%的重复数据删除来自SQL Server备份:

在此处输入图片说明

考虑到数据库备份的大小是文件夹的20倍,这似乎是不现实的。举个例子:

在此处输入图片说明

它认为13.3GB的备份文件已被重复数据删除为0个字节。当然,当我对其进行测试还原时,该文件实际上不起作用。

更糟的是,该驱动器上还有一个文件夹,其中几乎有TB的数据应该进行大量重复数据删除,但没有删除。

Server 2012 R2重复数据删除能否正常工作?


5
我将不得不记住那个。“当然,我不会删除您的数据,因为您很生气。我将其重复数据删除为0字节,就全部了。”
HopelessN00b

假设从一晚到下一夜的数据相对相同,是否有可能进行重复操作。这意味着,如果您有第一个备份和最后一个备份,那么每晚唯一的事情就是对差异的快照,例如VSS。从理论上讲,鉴于第一个和最后一个副本可能足以在中间重新生成文件,因此可以将其缩减为0。但是由于还原失败,因此我将等待您给出解释。但是,你的测试并不看好..
MikeAWood

@MikeAWood也将完全不同的数据库备份重复数据删除为0字节,这肯定是错误的。正如您所指出的,我想要重复数据删除的一件事是,从晚上到晚上的备份有90%是相同的。
马克·亨德森

@MarkHenderson如果您设置了新驱动器并将所有内容复制到该驱动器,那么它将起作用吗?只是随便猜。也许与DFS类似,在DFS中必须完成查看初始数据的过程,否则它将无法正常工作。您的结果很奇怪,毫无疑问。希望你看着办吧,我好奇地想知道发生了什么事..
MikeAWood

@MikeAWood-我没有尝试过。从那以后,我就对该驱动器进行了修改,并使用不同的重复数据删除设置重新创建了该驱动器,因此,我将看到今晚当另一个转储运行时会发生什么
Mark Henderson

Answers:


5

重复数据删除确实有效。

通过重复数据删除,“磁盘大小”字段变得毫无意义。这些文件不再是普通的“文件”,而是重新解析点,并且不包含实际数据,而是元数据供dedup引擎重建文件。据我了解,由于dedup块存储是按卷存储的,因此您无法按文件存储的存储,因此只能按卷存储。 http://msdn.microsoft.com/zh-CN/library/hh769303(v=vs.85).aspx

如果尚未对其他数据进行重复数据删除,则您的重复数据删除工作可能尚未完成。它不是超快的,默认情况下是有时间限制的,并且可能会受到资源限制,具体取决于您的硬件。从服务器管理器中检查重复的计划。

我已经在大约一年的不同场景(SCCM DP,不同部署系统,通用文件服务器,用户主文件夹文件服务器等)中的多个系统(Windows 2012 R2)上部署了dedup。只是确保您已完全打补丁,我记得自RTM以来对edup功能(累积更新和修补程序)进行了几个补丁。

但是,存在一些问题,某些系统无法直接从本地系统(在某些情况下为IIS,SCCM)中的优化文件中读取数据。正如yagmoth555所建议的那样,您应该尝试Expand-DedupFile对其进行优化,或者仅制作该文件的副本(目标文件在进行下一次优化运行之前将不会进行优化),然后重试。 http://blogs.technet.com/b/configmgrteam/archive/2014/02/18/configuration-manager-distribution-points-and-windows-server-2012-data-deduplication.aspx https://kickthatcomputer.wordpress .com / 2013/12/22 / no-input-file-specified-windows-server-2012-dedupe-iis-with-php /

如果您的SQL备份实际上已损坏,我相信这是因为存在其他问题,与重复数据删除技术无关。


感谢您的回答。您的回答反映了我自己的发现。我对重复数据删除有一些误解,并且我的测试方法存在缺陷。
马克·亨德森

@标记任何有关您可以分享的误解和测试方法的信息...?也许在博客文章中?学习起来会很有趣,因为我无法想到您(因此我)可能在哪里出了问题。编辑:我现在已经看到了您的答案...但是,如果您有一个博客文章,则将是一个不错的阅读方法。
Ashley

1
@AshleySteel我真的不再写博客了。曾经很久很久了。整个事情基本上归结为我不了解Windows Server重复数据删除的工作原理...
Mark Henderson

2

看来我可能已经开枪说这种重复数据删除是不可能的。显然,这是完全有可能的,因为除了这些未压缩的SQL Server备份之外,我还拥有主机VM的VMWare快照级备份。

正如yagmoth555所建议的那样,我Expand-DedupeFile在其中的一些0字节文件上运行了一个文件,最后我得到了一个完全可用的文件。

然后,我查看了我的测试方法,以确定我认为文件不好,然后在测试中发现了一个缺陷(权限!)。

我还在十六进制编辑器中打开了一个0字节的重复数据删除备份文件,一切看起来都很好。

因此,我调整了测试方法,一切似乎都可以正常进行。当我离开它时,重复数据删除实际上变得更好,而且由于重复数据删除,我现在已经节省了超过1.5TB的空间。

在进行批量生产之前,我将对此进行更彻底的测试,但是现在看来,它很有希望。


0

是的,但是我只看到了一个Hyperv集群数据库db edup'ed的情况。4tb到400g,VM正在运行。操作系统已完全修补。

对于您的sql备份文件,是否可以在其中读取转储?我会检查内容。对于那部分,我无法回答它如何删除ascii文件。


它们是二进制文件,但是正如我已经提到的,它们中的任何内容都已完全损坏。我实际上并未在十六进制编辑器中检查内容,此后我一直对该驱动器进行了修改,并使用不同的重复数据删除参数重新创建了该驱动器,以了解今晚会发生什么。
Mark Henderson

1
@MarkHenderson大小为0时,在dedup元数据中可能是大块损坏。“重复数据删除会引起单个块损坏的影响,因为流行的块可以被大量文件引用。想象一下,由于扇区错误而丢失了1000个文件所引用的块;您将立即遭受1000个文件丢失。 ” cmd Expand-DedupFile将排除它是否是错误的.bak或dedup损坏
yagmoth555
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.