Windows Serverのデータ重複除去は、対応するデータボリューム上の重複チャンクを共有して物理容量を節約する機能です。Windows Server 2025/2022/2019/2016では`FS-Data-Deduplication`を導入し、対象ボリュームの用途と最小ファイル経過日数を決めて有効化します。導入前に`DDPEval.exe`等で節約見込みとワークロード互換性を評価し、復元可能なバックアップ、十分な空き容量、パイロットボリュームを用意してください。節約率はデータ内容で変わり、43%などの固定値は保証できません。
重複除去はバックアップではありません。チャンクストアの破損やボリューム障害から戻すには、重複除去対応のバックアップと復元試験が必要です。
対応条件と除外を確認する
Microsoft公式資料で対象OS、ファイルシステム、ワークロードを確認します。ReFSの重複除去はWindows Server 2019以降でサポートされ、フェールオーバークラスターでは全ノードに役割が必要です。WindowsクライアントへServerのバイナリを持ち込む非公式手順はサポートされません。
OS/ブートボリューム、暗号化ファイル、頻繁に変わるデータベース、製品が独自に重複排除するデータ、Windows Searchが必須のボリュームなどは条件を確認します。Hyper-V、VDI、Storage Spaces Direct、バックアップ製品、ウイルス対策、クォータとの相互運用性を製品版ごとに調べます。
導入前に容量を評価する
ファイル種類、平均サイズ、重複率、変更率、日次増加、保持期間を調べます。ISO、VHDX、ユーザープロファイル、ソフトウェア配布など同一ブロックが多いデータは効果が見込めますが、圧縮済み動画、暗号化、重複が少ないデータは節約が小さくなります。
節約後の空き容量だけでなく、初回最適化、ガベージコレクション、スクラビング、バックアップ、アンオプティマイズに必要な余裕を見積もります。Microsoftの診断資料は空き容量不足とチャンクストア逼迫を主要障害として挙げています。容量が限界のボリュームへ緊急有効化しません。
機能をインストールする
Server Managerでは役割と機能の追加から、ファイルサービスと記憶域サービス → ファイルサービスおよびiSCSIサービス → データ重複除去を選びます。PowerShellでは管理者として次を実行できます。クラスターなら全ノードへ同じ役割を導入し、再起動要否と保守時間を確認します。
Install-WindowsFeature -Name FS-Data-Deduplication
Get-WindowsFeature -Name FS-Data-Deduplication
本番で「必要に応じて自動再起動」を無条件に選ばず、役割導入結果とPending Restartを確認して計画再起動します。導入前後のイベント、サービス、バックアップ、監視エージェントを確認します。機能導入だけではボリュームの重複除去は始まりません。
対象ボリュームを設定する
Server Managerのボリューム画面または`Enable-DedupVolume`で対象を有効化します。UsageTypeはDefault、HyperV、Backup等から実際の用途に合わせます。最小ファイル経過日数を0日にすると新しいファイルまで即対象となり、変更の多い環境で負荷が増えるため、検証目的以外で安易に使いません。
Enable-DedupVolume -Volume 'E:' -UsageType Default
Set-DedupVolume -Volume 'E:' -MinimumFileAgeDays 7
Get-DedupVolume -Volume 'E:'
除外フォルダー・拡張子は、効果がないデータや製品要件に限定します。機密ファイルを除外しても暗号化やアクセス制御の代わりにはなりません。パスの大文字小文字、マウントポイント、ワークロードの一時領域を確認し、除外でバックアップ漏れを作らないようにします。
スケジュールを設計する
標準のバックグラウンド最適化、スループット最適化、ガベージコレクション、整合性スクラビングの時間帯を、業務I/Oとバックアップに重ならないよう調整します。タスクスケジューラの項目を手作業で連打するより、Dedup cmdletと公式スケジュールを使い、変更を構成管理します。
初回は少量のパイロットデータから開始し、CPU、メモリ、I/O、ジョブ時間、空き容量、アプリ応答を測ります。大量データを一晩で全最適化できる前提を置かず、変更率に処理が追いつくかを数週間監視します。
状態を確認する
Get-DedupStatus -Volume 'E:'
Get-DedupJob
Get-DedupSchedule
`Get-DedupStatus`のSavingsRateはボリューム全体、OptimizedFilesSavingsRateは最適化対象ファイルに対する指標で意味が異なります。節約率だけで成功とせず、InPolicyFilesCount、OptimizedFilesCount、LastOptimizationTime、ジョブ失敗、空き容量を確認します。
イベントビューアーのApplications and Services Logs → Microsoft → Windows → Deduplication → Operationalで失敗を調べます。繰り返し失敗する場合はジョブを再実行するだけでなく、空き容量、ファイルシステム、チャンクストア、スケジュール競合、更新後の役割有効性を確認します。
バックアップと復元を試す
重複除去対応のバックアップ製品を使い、ボリューム全体と個別ファイルの両方を復元します。Microsoftの相互運用性資料ではWindows Server Backupで最適化状態のボリュームをバックアップできますが、利用製品の対応OS、最適化バックアップ、別サーバー復元を確認します。
別サーバーへ復元する場合、そのOSが該当重複除去形式を読め、機能が導入されている必要があります。OSアップグレード後にファイルが開けない場合は、重複除去機能が欠落していないかを確認します。復元試験なしに元ボリュームや旧バックアップを削除しません。
移行・コピーの注意
重複除去済みファイルは再解析ポイントとチャンクストアに依存します。System Volume Informationを削除したり、チャンクストアを通常ファイルのようにコピーしたりすると破損します。Microsoftは特定のRobocopy利用を推奨していないため、バックアップ/復元、ディスク移動などサポートされた方法を選びます。
コピー先で再水和されると論理サイズ分の空き容量が必要です。節約後の使用量だけで移行先を用意すると途中で枯渇します。移行前に論理サイズ、物理サイズ、チャンクストア、ファイル数を測り、小さな復元で読み書きを確認します。
無効化と元へ戻す
重複除去を無効にしただけでは、既に最適化されたファイルが自動で通常状態へ完全復元されるとは限りません。元へ戻すにはUnoptimizationジョブを実行しますが、全論理データを保持できる十分な空き容量が必要です。実行前に容量を試算し、バックアップを確認します。
Start-DedupJob -Type Unoptimization -Volume 'E:'
Get-DedupJob
アンオプティマイズ失敗時にチャンクストアを削除しません。ジョブ状態、イベント、空き容量を確認し、必要なら新しい十分な容量のボリュームへサポートされた復元を行います。機能削除はファイルが通常状態で読めることを確認した後に行います。
受入チェック
- 対象OS・ファイルシステム・ワークロードがサポート範囲内
- 節約見込みと変更率を事前評価した
- バックアップと別サーバー復元に成功した
- 最適化・GC・スクラブが業務時間外に完了する
- 空き容量、チャンクストア、失敗イベントを監視している
- アンオプティマイズに必要な容量と手順がある
運用上の結論
データ重複除去は容量購入を永遠に不要にする機能ではありません。節約率、処理負荷、バックアップ時間、復元性、運用工数を月次で測り、ワークロードが変わったらUsageTypeと除外を見直します。容量警告を重複除去で隠すのではなく、保持・アーカイブ・増設も含めて管理します。
公式情報・参考資料

コメント