我试图从 Server 2012 R2 重复数据删除功能中获得一些合理的结果,但一再失败。我有两个大卷(4 + 2 TB)分别暴露为 D: 和 E:。这些卷作为集群存储分配给两个不同的文件服务器集群资源(不知道这是否会改变任何东西),并且磁盘在我尝试启用重复数据删除的机器上处于联机状态。
Enable-DedupVolume D:
Enable-DedupVolume E:
Set-DedupVolume -Volume D: -MinimumFileAgeDays 0
Set-DedupVolume -Volume E: -MinimumFileAgeDays 0
Start-DedupJob D: -Type Optimization
Start-DedupJob E: -Type Optimization
几分钟后,两个优化工作都完成了。同时,两个磁盘都有一些磁盘读取负载。最后,我在重复数据删除日志中收到的事件表明没有任何重复数据删除:
Log Name: Microsoft-Windows-Deduplication/Operational
Source: Microsoft-Windows-Deduplication
Date: 12/2/2015 11:36:02 AM
Event ID: 6153
Task Category: None
Level: Information
Keywords:
User: SYSTEM
Computer: wss-01.example.com
Description:
Optimization job has completed.
Volume: D: (\\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\)
Error code: 0x0
Error message:
Savings rate: 0
Saved space: 0
Volume used space: 2867461320704
Volume free space: 1530452017152
Optimized file count: 0
In-policy file count: 0
Job processed space (bytes): 0
Job elapsed time (seconds): 37
Job throughput (MB/second): 0
Log Name: Microsoft-Windows-Deduplication/Operational
Source: Microsoft-Windows-Deduplication
Date: 12/2/2015 11:38:26 AM
Event ID: 6153
Task Category: None
Level: Information
Keywords:
User: SYSTEM
Computer: wss-01.example.com
Description:
Optimization job has completed.
Volume: E: (\\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\)
Error code: 0x0
Error message:
Savings rate: 0
Saved space: 0
Volume used space: 2068610711552
Volume free space: 130142007296
Optimized file count: 0
In-policy file count: 0
Job processed space (bytes): 0
Job elapsed time (seconds): 686
Job throughput (MB/second): 0
数据量相当丰富 - D: 主要是 ISO 映像和不同类型的安装程序,而 E: 是典型的用户家庭数据,所以我预计会显示一些节省(至少超过 0)。对任一卷的调用Update-DedupStatus
都没有多大作用。结果get-dedupstatus
表明没有文件被认为是重复数据删除的“策略”:
PS C:\> get-dedupstatus | select-object -Property *
ObjectId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
Capacity : 2198752718848
FreeSpace : 130142007296
InPolicyFilesCount : 0
InPolicyFilesSize : 0
LastGarbageCollectionResult :
LastGarbageCollectionResultMessage :
LastGarbageCollectionTime :
LastOptimizationResult : 0
LastOptimizationResultMessage : The operation completed successfully.
LastOptimizationTime : 12/2/2015 11:45:10 AM
LastScrubbingResult :
LastScrubbingResultMessage :
LastScrubbingTime :
OptimizedFilesCount : 0
OptimizedFilesSavingsRate : 0
OptimizedFilesSize : 0
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2068610711552
UsedSpace : 2068610711552
Volume : E:
VolumeId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolumeStatus
CimInstanceProperties : {Capacity, FreeSpace, InPolicyFilesCount, InPolicyFilesSize...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
ObjectId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
Capacity : 4397913337856
FreeSpace : 1530452013056
InPolicyFilesCount : 0
InPolicyFilesSize : 0
LastGarbageCollectionResult : 5657346
LastGarbageCollectionResultMessage : There are no actions associated with this job.
LastGarbageCollectionTime : 12/2/2015 11:58:12 AM
LastOptimizationResult : 0
LastOptimizationResultMessage : The operation completed successfully.
LastOptimizationTime : 12/2/2015 11:45:10 AM
LastScrubbingResult : 0
LastScrubbingResultMessage : The operation completed successfully.
LastScrubbingTime : 11/28/2015 3:45:07 AM
OptimizedFilesCount : 0
OptimizedFilesSavingsRate : 0
OptimizedFilesSize : 0
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2867461324800
UsedSpace : 2867461324800
Volume : D:
VolumeId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolumeStatus
CimInstanceProperties : {Capacity, FreeSpace, InPolicyFilesCount, InPolicyFilesSize...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
并且配置几乎是默认设置:
PS C:\> get-dedupvolume | select-object -Property *
ObjectId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
UsageType : Default
Capacity : 2198752718848
ChunkRedundancyThreshold : 100
DataAccessEnabled : True
Enabled : True
ExcludeFileType :
ExcludeFileTypeDefault : {edb, jrs}
ExcludeFolder :
FreeSpace : 130142007296
MinimumFileAgeDays : 0
MinimumFileSize : 32768
NoCompress : False
NoCompressionFileType : {asf, mov, wma, wmv...}
OptimizeInUseFiles : False
OptimizePartialFiles : False
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2068610711552
UsedSpace : 2068610711552
Verify : False
Volume : E:
VolumeId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolume
CimInstanceProperties : {Capacity, ChunkRedundancyThreshold, DataAccessEnabled, Enabled...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
ObjectId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
UsageType : Default
Capacity : 4397913337856
ChunkRedundancyThreshold : 100
DataAccessEnabled : True
Enabled : True
ExcludeFileType :
ExcludeFileTypeDefault : {edb, jrs}
ExcludeFolder :
FreeSpace : 1530452013056
MinimumFileAgeDays : 0
MinimumFileSize : 32768
NoCompress : False
NoCompressionFileType : {asf, mov, wma, wmv...}
OptimizeInUseFiles : False
OptimizePartialFiles : False
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2867461324800
UsedSpace : 2867461324800
Verify : False
Volume : D:
VolumeId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolume
CimInstanceProperties : {Capacity, ChunkRedundancyThreshold, DataAccessEnabled, Enabled...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
我已经尝试将各个磁盘从集群服务角色中分离出来(即,只是使它们成为具有“简单”卷和 NTFS 文件系统的独立磁盘)禁用和重新启用重复数据删除并进行优化运行,而不会对整体结果进行任何重大更改。
那么为什么它坏了,我该如何修复它?
我的麻烦似乎是我试图删除重复数据的数据来自暴露 SMB 存储的 NetApp 文件管理器。从那里复制的所有文件(通过
robocopy
with/COPYALL
)似乎都附加了扩展属性“.NETAPP”。根据文档,重复数据删除忽略具有扩展属性的文件:仔细检查假设很容易,只需创建两个具有(几乎)相同内容的文件:
运行优化作业并看到
InPolicyFilesCount
增加到 2。其他人在 NetApp 用户论坛中报告了类似的问题。我只需要找出如何在适当的时间内删除约 1000 万个文件上的 EA - 幸运的是 Veritas 发布了EVEARemovalUtility来完成这项任务,因为他们的存档解决方案存在 EA 和他们创建为指针的连接点之间的不兼容问题到归档数据。该工具是免费下载的,使用很简单:
EVEARemovalUtility.exe \\server\Share -d -s
创建具有各自扩展属性的文件列表EVEARemovalUtility.exe \\server\Share -r -s
剥离所有 EA 文件可能是由于它的年龄、安装方式和缺乏更新的文档,它不能在开箱即用的 Server 2012 R2 上运行,抱怨缺少 DLL。我已使用 Server 2008 R2 机器作为解决方法来执行。
删除 EA 后,重复数据删除按预期运行。