Windows10で重複排除(Dedup)を使う(Part3.運用編)


Windows10で重複排除(Dedup)を使う(Part1.導入編)
Windows10で重複排除(Dedup)を使う(Part2.設定編)
Windows10で重複排除(Dedup)を使う(Part3.運用編)


前回までで、一通りの設定が終わりました。

実際の運用時には、任意のタイミングで重複排除関係の処理を実行できます。

(重複排除処理を実行、 完全+完了まで待機)
Start-DedupJob -Volume “D:” -Type Optimization
Start-DedupJob -Volume “D:” -Type Optimization -Full -Wait

(ガベージコレクションを実行、 完全+完了まで待機)
Start-DedupJob -Volume “D:” -Type GarbageCollection
Start-DedupJob -Volume “D:” -Type GarbageCollection -Full -Wait

(整合性チェックを実行、 完全+完了まで待機)
Start-DedupJob -Volume “D:” -Type Scrubbing
Start-DedupJob -Volume “D:” -Type Scrubbing -Full -Wait


なお上記コマンドはStart-をStop-に変更すれば、ジョブの終了コマンドになります。



(確認コマンド)
Get-DedupProperties D Dドライブの利用状況表示
Get-dedupjob       実行中の重複排除ジョブ表示
Get-dedupstatus      重複排除状況(ファイル数)表示
Get-DedupVolume     重複排除状況(重複排除による削減結果)表示
Get-DedupSchedule    設定されているスケジュール情報表示
Get-DedupMetadata    メタデータ情報表示


(設定変更)
Enable-DedupVolume -Volume “D:” -UsageType <重複排除タイプ>
Set-DedupVolume -Volume “D:”  -<パラメータ名 > <変更値>


(ドライブの重複排除無効化、データの重複排除無効化)
Disable-DedupVolume -Volume “D:”
Start-DedupJob -Volume “D:” -Type UnOptimization


これらのコマンドにより、重複排除処理を制御できます。

それでは、試しにいろいろ操作して、重複排除がどのように処理されるかをチェックしてみます。

1,Dドライブにファイル(ISOファイル)をコピーして空き容量を確認する。
2、重複排除をせずに、ファイルを複製して、空き容量を確認してみる。
3.2で複製した先ファイルを完全に削除して、空き容量を確認してみる。
4.重複排除を実施してみて、Disk利用状況を確認してみる。
5.同じISOファイルを同じフォルダに複製し、空き容量を確認してみる。
6.重複排除を実施してみて、Disk利用状況を確認してみる。
7.3で複製した元ファイルを完全に削除して、空き容量を確認してみる。
8.重複排除を実施してみて、Disk利用状況を確認してみる。
9.ガベージコレクション処理を実行して、Disk利用状況を確認してみる。
10.ISOファイルすべてを完全削除して、Disk利用状況を確認してみる。
11.ガベージコレクション処理を実行して、Disk利用状況を確認してみる。
12.ガベージコレクション処理(完全)を実行して、Disk利用状況を確認してみる。

1,Dドライブにファイル(ISOファイル)をコピーして空き容量を確認する。

ISOファイルをコピーしました。その分の容量が消費され、空き容量が減りました。
(495->491GB [-4.90GB] )
また重複排除処理は実施していないため、SavedSpaceは0です。


2.重複排除をせずに、ファイルを複製して、空き容量を確認してみる。

重複排除がされていないファイルについて、複製を行いました。
通常のファイルコピーになりますので、ISOファイル1つ分の空き容量が減っています、
(490.7GB -> 486.3GB [-4.55GB])
重複排除は実施していないので、SavedSpaceも変わらず0になっています。

3.2で複製した先ファイルを完全に削除して、空き容量を確認してみる。

2で複製した先ファイル(Windows10_21H2_x64 – コピー.iso)を完全に削除して、空き容量を確認しました。
重複排除されていない通常のファイル削除になりますので、ISOファイル1つ分の空き容量が増えていますっています、
(486.3GB -> 490.7GB [+4.55GB])
重複排除は実施していないので、SavedSpaceも変わらず0になっています。

4、重複排除を実施してみて、Disk利用状況を確認してみる。

重複排除(コピーしたSOファイル単体)を実施した結果、
ごく少数(155MB)ですが、重複排除が実施されました。
ただし、おそらく重複排除が実施されたデータがブロックデータとメタデータに分割されて保存されたことにより追加でDisk容量が消費され、この段階では空き容量は逆に減っています(490.7GB -> 489.4 [-1.28GB])。
重複排除されたファイル数は1になっています。


5.同じISOファイルを同じフォルダに複製し、空き容量を確認してみる。

同じISOファイルを同じフォルダに複製してみました。
空き容量を確認すると1つのISOファイル分と容量が減っています。
(489.4GB->486.5GB [-2.92GB])
なぜか、使用料が2.92GBと少ないのですが、もしかしたらReFSとの関係で使用量が削減されているのかも知れません。

今回複製したファイルに関しては、まだ重複排除は実施されていませんので
重複排除されたファイル数は変わらず1になっています。


6.重複排除を実施してみて、Disk利用状況を確認してみる。

重複排除(コピーしたISOファイル単体x2)を実施した結果、
ISOファイル1つ分(4.44GB)の重複排除が実施されました。

これは2つのファイルが全く同じものなので、すべて同一ブロックとなるファイルが2つあるということになります。
このため、ファイル1つ分の共通のブロックデータと、2ファイル分のメタデータに分割されます。メタデータはブロックデータと比べたらごく少量になります。
結果としてファイル1つ分の空き容量増加(489.4GB -> 490.8GB [+4.28GB])になります。

重複排除されたファイル数は2になっています。


7.3で複製した元ファイルを完全に削除して、空き容量を確認してみる。

3で複製した元ファイル(Windows10_21H2_x64.iso)を完全に削除しました。
このファイルはすべてのブロックが重複排除されているファイルになります。
ブロックデータとメタデータに分かれて保存されているので、削除はメタデータ分のみの削除となります。ブロックデータは削除されないので、空き容量にはほとんど変更ありません。
(490.77GB -> 490.78GB [+0.01GB])

削除後重複排除は実施していないので、重複排除ステータスは変わらず、
SavedSpaceはファイル1つ分(4.44GB)、重複排除されたファイル数は2になっています。

8.重複排除を実施してみて、Disk利用状況を確認してみる。

再度重複排除を実施しました。
削除された分が反映され、SavedSpaceはファイル1つを重複排除した結果(155.23MB)に戻っており、重複排除されたファイル数も2->1になっています。

なお、重複排除処理だけでは、ブロックデータの操作は行われませんので、空き容量はほぼ変わりません(490.78GB->490.77GB [-0.01GB])

9.ガベージコレクション処理を実行して、Disk利用状況を確認してみる。

ガベージコレクションを実施します。
ガベージコレクションは、変更したファイルのメタデータを確認して、未使用のブロックデータを削除する作業になります。
今回の場合、ブロックデータは残ったファイルで利用しているので、削除されません。
このため、空き容量もほぼ変わりません(490.77GB -> 490.78GB [+0.01GB])

10.ISOファイルすべてを完全削除して、Disk利用状況を確認してみる

残ったファイル(Windows10_21H2_x64 – コピー.iso)を完全に削除しました。
こちらもすべてのブロックが重複排除されているファイルになりますので、
削除はメタデータ分のみの削除となります。
ブロックデータは削除されないので、空き容量には変更ありません。
(490.78GB -> 490.78GB [+0GB])

削除後重複排除は実施していないので、重複排除ステータスは変わらず、
SavedSpaceはファイル1つの重複排除結果分(155.23GB)、重複排除されたファイル数は1のままです。

11.ガベージコレクション処理を実行して、Disk利用状況を確認してみる

再度ガベージコレクションを実施します。
今回の削除で、すべてのブロックデータも未使用になりましたので、今回のガベージコレクションで、そのブロックが削除されます。

空き容量は内部処理のためか1度減りましたが、少し待つとブロックデータ削除が反映され空き容量が増えたことが確認できました。
(490.78GB -> 470.18GB [-20.6G] -> 494.91GB [+24.73GB]、全体で[+4.13GB])
このため、SavedSpaceは 0、重複排除されたファイル数も0になります。

12.ガベージコレクション処理(完全)を実行して、Disk利用状況を確認してみる

最後にガベージコレクション(フル)を実施します。
今回シナリオでは、単純なファイル複製・削除しかしていないため、前回の通常のガベージコレクションで未使用ブロックがすべて削除されていました。
このためガベージコレクション(フル)を削除しても空き容量は減りませんでした。
(494.91GB -> 494.91GB [+0])

これで、1連のシナリオの完了になります。
各項目で、ステータスを比較してみます。

作業項目
________________
保存ファイル数
____
空き容量
_______
重複排除
容量
_______
重複排除
ファイル
_______
0.作業前0494.99GB00
1,Dドライブにファイル(ISOファイル)をコピー1490.69GB
(-4.90GB)
00
2、重複排除をせずに、ファイルを複製248635GB
(-4.55GB)
00
3.2で複製した先ファイルを完全に削除1490.69GB
(+4.55GB)
00
4.重複排除を実施1489.41GB
(-1.28GB)
0.155GB]
(+0.15GB)
1
5.同じISOファイルを同じフォルダに複製2486.49GB
(-2.92GB)
0.155GB1
6.重複排除を実施2490.77GB
(+4.28GB)
4.44GB
(+4.28GB)
2
7.3で複製した元ファイルを完全に削除1490.78GB
(+0.01GB)
4.44GB2
8.重複排除を実施1490.77GB
(-0.01GB)
0.155GB
(-4.28GB)
1
9.ガベージコレクション処理1490.78GB
(+0.01GB)
0.155GB1
10.ISOファイルすべてを完全削除0490.78GB0.155GB1
11.ガベージコレクション処理を実行9494.91GB
(+4.13GB)
0GB
(-0.15GB))
0
12.ガベージコレクション処理(完全)を実行9494.91GB0GB0


Windowsでの重複排除処理の動作が何となくでも分かったでしょうか?
簡単に言うとこんな感じです。

  • 重複排除をしていないファイルはファイル操作をしても、その場で重複排除処理は行われずに、そのままファイルが追加・変更・削除される。
  • 重複排除済ファイルは、ブロックデータとメタデータに分かれて保存される。(その分Disk容量は消費される)
  • 重複排除済ファイルの追加・変更は、そのまま保存される。
  • 重複排除済ファイルの削除は、メタデータのみ削除される。
  • 重複排除処理はアイドル時間やスケジュール実行、または任意のキックが必要。
  • 重複排除処理をしないと重複排除ステータスは変更されない。
  • 重複排除処理をしても未使用ブロックデータは削除されない。
  • ガベージコレクションはスケジュール実行、または任意キックが必要
  • ガベージコレクションをすると、未使用ブロックの削除が行わる。

重複排除の注意点としては、以下の通りです。

  • ファイルの更新(追加、変更)時、一時的にそのまま保存されるので、その分の空き容量が必要
  • 全く重複ブロックが存在しないようなデータを保存している場合は、逆にメタデータ分だけ容量使用量が増える結果となります。(除外設定を適切に設定すれば回避可能)
  • ファイルの削除をしてもその時点ではブロックデータは削除されない。
    Disk容量を開けるにはガベージコレクション処理が必要。
    (つまりDisk容量の枯渇が発生した場合には、ファイルを削除しただけでなくガベージコレクションを実行しないと回復しない)
  • Disk使用率が上下する場合があるため、Disk枯渇を防ぐためには定期的なDisk利用状況を推奨します。
  • Bobocopyを利用されている方もいると思いますが、重複排除領域で利用する場合は注意が必要です。(/B or /ZBを付ける。/XJD,/XKFオプションは使用しない。ドライブ全体をコピーする場合、/XD “\System Volume Information”を追加するなど)
    データ重複除去(Deduplication)が有効なドライブからRobocopyでファイルをコピーする際の注意点
  • Robocopy以外にも、併用する際に注意が必要なものもあります。(Windows Search)
    データ重複除去の相互運用性

Windowsでの重複排除は癖はありますが、Disk容量を有効活用することができます。
後処理タイプなので、暇な時間に重複排除処理をするなどすれば、CPU,メモり使用量の割り当てを比較的少なくできます。
(リアルタイムタイプだと、Disk1TBあたり物理メモリが1-2GB必要といったものも多いです。このため専用ハードウェアで提供されていることが多いです)

Win10での利用はイレギュラーの利用とはなりますが、WindowsServerではサポートされている機能ですが、ぜひ使ってみて下さい。
(今後Win10をバージョンアップが発生した場合に、問題が発生する可能性があります。)

それではよい重複排除ライフを!!



Windows10で重複排除(Dedup)を使う(Part2.設定編)


Windows10で重複排除(Dedup)を使う(Part1.導入編)
Windows10で重複排除(Dedup)を使う(Part2.設定編)
Windows10で重複排除(Dedup)を使う(Part3.運用編)

前回、Windows10に重複排除機能を追加しましたが、まだ有効になっていないので、有効にする必要があります。

サーバOSであれば、以下のようにサーバマネージャというGUIツールを利用して、ドライブの重複排除の有効化や各種設定、状況確認などができるのですが、Win10にはそのようなものはありませんので、すべてPowerShellから設定、状況確認をする必要があります。

では、コマンドを利用して有効化します。
対象は、ドライブ単位になります。

今回は D:\ドライブをReFS 3.4でフォーマットしていますので、こちらを有効化します。
一旦、以下の条件で、設定してます。

設定ドライブ D: (ReFS 3.4フォーマット)
使用用途   Defualt(General purpose file Server)

(有効化)
Enable-DedupVolume -Volume “D:” -UsageType Default

(設定確認)
Get-DedupVolume –Volume “D:”

(詳細設定確認)
Get-DedupVolume –Volume “D:” | select *

なお、一部項目はすべて表示されない場合があるので、以下のように入力すると表示されます。(以下はNoCompressionFileTypeを表示する場合)
Get-DedupVolume -Volume “D:” | foreach-object NoCompressionFileType

これで、D:ドライブが重複排除として設定されましたが、一部設定を変更することもできます。

なお、使用用途については、”Defualt(General purpose file Server)”をいったん設定しましたが、用途は、以下からセレクトできます。
MSドキュメント

用途
________
設定値
_____
特徴
_______________________
動作________________________
汎用ファイルサーバDefault汎用ファイル サーバーでは、同じファイルの多くのコピーまたはバージョンを複数のユーザーが所有する傾向があるため、データ重複除去の有力候補です。 ソフトウェア開発用の共有は、多くのバイナリがビルドごとに基本的に変更されていないため、データ重複除去の恩恵を受けることになります。バックグラウンドの最適化
既定の最適化ポリシー:ファイルの最小経過期間 = 3 日
使用中のファイルの最適化 = なし
部分的なファイルの最適化 = なし
仮想デスクトップ インフラストラクチャ (VDI) の展開HyperV仮想デスクトップ インフラストラクチャ (VDI) の展開: リモート デスクトップ サービスなどの VDI サーバーは、組織がユーザーにデスクトップをプロビジョニングするための軽量のオプションになります。バックグラウンドの最適化
既定の最適化ポリシー:ファイルの最小経過期間 = 3 日
使用中のファイルの最適化 = あり
部分的なファイルの最適化 = あり
Hyper-V 相互運用のための「内部的」な調整
仮想化されたバックアップ アプリケーションなどのバックアップ先Backupバックアップ スナップショット間には大幅な重複があるため、Microsoft Data Protection Manager (DPM) などのバックアップ アプリケーションはデータ重複除去の有力候補です。(WinSV2016から設定可能)優先度の最適化
既定の最適化ポリシー:ファイルの最小経過期間 = 0 日
使用中のファイルの最適化 = あり
部分的なファイルの最適化 = なし
DPM または DPM に似たソリューションとの相互運用のための「内部的」な調整

変更コマンドは、以下の通りです。(初期の有効化時と同じコマンドです)
一部パラメータは、自動調整されます。

(Default)に再設定する場合
Enable-DedupVolume -Volume “D:” -UsageType Default

(HyperV)に再設定する場合
Enable-DedupVolume -Volume “D:” -UsageType HyperV

(Backup)に再設定する場合
Enable-DedupVolume -Volume “D:” -UsageType Backup

それでは、特定の設定項目を設定してみます。

ここでは、以下の条件で設定変更します(よく設定変更する項目)。
(その他項目は、MSドキュメントを参照ください。)

設定
_________________
パラメータ名
________________
Default時
の初期値
_______
変更値
______
ファイルが最適化のポリシー内であるとみなされる前にファイルが作成されてから経過した日数MinimumFileAgeDays 30
ファイルが最適化のポリシー内であるとみなされる必要がある最小ファイル サイズMinimumFileSize 3276832768
最適化から除外されるファイルの種類ExcludeFileTypeなし.tmp
.temp
最適化の対象としないフォルダーのパスの指定ExcludeFolderなしd:\TEMP

コマンド例(設定、確認)

Set-DedupVolume -Volume “D:” -MinimumFileAgeDays 0 -MinimumFileSize 32768
get-DedupVolume -Volume “D:” | select MinimumFileAgeDays,MinimumFileSize

Set-DedupVolume -Volume “D:” -ExcludeFileType @(“tmp”,”temp”)
get-DedupVolume -Volume “D:” | select ExcludeFileType

Set-DedupVolume -Volume “D:” -ExcludeFolder @(“\TEMP”)
get-DedupVolume -Volume “D:” | select ExcludeFolder

上記のように項目を設定していくことができます。

これで、D:ドライブを重複排除ストレージとして使用できるようになりました。

このままDドライブにファイルを保存すれば、サーバのアイドル時に自動的に重複排除が行われます。
また、スケジュールされた時間帯に、ガーベージコレクションや整合性チェックも行われます。

この時点での状況を確認してみます。

Get-DedupProperties D Dドライブの利用状況
Get-dedupjob       実行中の重複排除ジョブ
Get-dedupstatus      重複排除状況(ファイル数)
Get-DedupVolume     重複排除状況(重複排除による削減結果)
Get-DedupSchedule    設定されているスケジュール情報
Get-DedupMetadata    メタデータ情報

次回は、運用編として、強制的に重複排除を実行するコマンド等、
特定のシナリオに従って、どのように動作するかを見てみたいと思います。



Windows10で重複排除(Dedup)を使う(Part1.導入編)

Windows10で重複排除(Dedup)を使う(Part1.導入編)
Windows10で重複排除(Dedup)を使う(Part2.設定編)
Windows10で重複排除(Dedup)を使う(Part3.運用編)

重複排除というのは、保存されたファイルの内容から、同じブロックを共有することで全体のディスク使用量を削減する機能です。

別のファイルシステムの機能で「圧縮機能」というのもありますが、条件によってはそれ以上の削減効果を得ることができます。(ReFSではまだ使えませんが)

一般的な話になりますが、削減効果としては
・ユーザドキュメントで30-50%程度
・繰り返し取得したフルバックアップファイルとかだと50-90%程度
とかなりのDisk容量を削減可能な場合があります。
(状況によって上下しますので、あくまで参考値です。)
(よく似たファイルが多いほど効果は高いです。)

重複排除はエンタープライズレベルの機能で、非常に高価な機能だったのですが、最近のWindowsServer(2012以降)には、重複排除機能が機能として搭載されています。

重複排除には処理方式としては、大きく分けると2種類あります。

インライン方式(リアルタイム処理)

  • ストレージに保存する直前に重複排除してから、保存します。
     リアルタイムで同じブロックがストレージに保存されているかを判断し、
     同じブロックが既にあれば、ブロックへのインデックス(メタデータ)のみ保存します。

     重複排除・圧縮後のデータだけを書き込むため、より必要な容量が抑えられる反面、
     一般的に多くのCPUパワーと、大量のメモリを利用する製品が多く、
     これらが足りないと書き込み性能に影響が出る場合があります。

     (データストレージ、NetApp、Oracle由来のZFSファイルシステムなど)


ポストプロセス方式(後処理)

  • ストレージに保存完了後の空き時間に重複排除処理を行います。
     ストレージの負荷が低いタイミングやスケジュールで、順次同じブロックがあるかを
     チェックし、同じブロックがあれば、ブロックを共有して、
     ブロックへのインデックス(メタデータ)に置き換えます。

     書き込みの際、性能に影響を与えない。比較的CPU,メモリ負荷が低い反面、
     一旦重複排除・圧縮前のデータを書き込むための容量が一時的に必要となります。

     (Windows Dedup等)

ほかにもプレプロセス方式(前処理)もありますが、ストレージではなく、
書き込みをするアプリ(バックアップソフト等)で実装されている場合が多い気がします。
事前にサーバ側で重複排除処理を実施しておき、完了した時点でストレージに保存します。

この辺の説明は、企業さんのサイトになりますが、こちらあたりがわかりやすいと思います。

WindowsServerでの重複排除ですが、こちらは、ポストプロセス方式(後処理)タイプの重複排除となります。サーバの負荷が低いアイドル状態や、暇な時間帯に重複排除処理を順次実施するタイプとなります。

なお、重複排除時には、ファイルはメタデータとブロックデータに分かれて保存されますが、ブロックデータ保存時は圧縮をしてから保存されるようです(圧縮除外拡張子指定あり)

比較的CPU,メモリ負荷が低いので、OSに機能として搭載するには現実的なのかもしれません。

こちらはエンタープライズレベルの機能になりますので、クライアントOSには搭載されず、サーバ系OS(WindowsServer2012以降)にのみ搭載されている機能になります。

重複排除に関するドキュメントはMSサイトを確認下さい。
(サーバOSであっても、いろいろ制限等などありますので、リスクを承知の上でお願いします。)

ただし、WindowsServerはクライアントOSとベースが同じですので、WindowsServerの重複排除モジュールを抜き出してクライアントOSに入れた方がおられるようです。
もちろんサポート対象外ですので、完全に自己責任になります。

How to Enable Data Deduplication in Windows 8
 Windows2012のモジュールを導入(NTFSに対応)
 :iInstallModule

Enable Deduplication on your Windows 8.1
 Windows2012R2のモジュールを導入?(NTFSに対応)
 :InstallModule

enabling-deduplication-on-windows-10-tp
 WinSV2016のモジュールを導入(NTFSに対応)
おそらくWin10 2004以前が対象
 :datadedup.zip

Dedupe Packages for Windows 10 Build 19041 (2004)
 2004以降のWin10にWInSV2019のモジュールを導入(NTFS,REFSに対応)
 :dedup-10.0.19041.1.zip

今回は、RefsをマウントしたWin10 21H2 にWinSV2019のモジュールを導入してみたいと思います。(何度も言いますが、自己責任になります。)

取得した、dedup-10.0.19041.1.zip をWin10 21H2上に解凍し、以下のコマンドでモジュールを導入します。(Zip内のinstall_remove_en-US.txtに記載があります。)

cd C:\DATA\dedup-10.0.19041.1\dedup-10.0.19041.1 (解凍したフォルダに移動)

dism /online /add-package /packagepath:Microsoft-Windows-FileServer-ServerCore-Package-amd64-10.0.19041.1.cab /packagepath:Microsoft-Windows-FileServer-ServerCore-Package-amd64-en-US-10.0.19041.1.cab

dism /online /add-package /packagepath:Microsoft-Windows-Dedup-Package-amd64-10.0.19041.1.cab /packagepath:Microsoft-Windows-Dedup-Package-amd64-en-US-10.0.19041.1.cab


dism /online /enable-feature /featurename:Dedup-Core /all

なお、ReFS関連で以下のレジストリキーがあると、WinPEとして起動していると認識されて失敗するので、削除してから実施してください。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\MiniNT\

これでPowerSHell上で重複排除(Dedup)に関するコマンド等が使用できるようになります。
Get-DedupProperties  (まだ有効化していないのでこの段階ではエラーになります)
Get-dedupstatus
Get-dedupjob
Get-DedupVolume
Get-DedupSchedule
・・・

この段階でスケジュールはすでに登録されています。

BackgroundOptimization自動的に重複排除処理(共通したブロックを確認し、インデックス(メタデータ)と置き換える処理)を実行する
(サーバアイドル時に実行)
GarbageCollection定期的にガーべージコレクション(未使用のブロックを確認して削除する機能を実施します)
デフォルトでは、毎週土曜日 2:45-
Scrubbing ディスク障害または不良セクターによるチャンク ストア内の破損を特定します。
デフォルトでは、毎週土曜日 3:45-


では,詳細を表示させてみます。

get-dedupschedule | select Enabled,Name,Type,Priority,Full,ScheduledTask,Days,Start,DurationHours,StopWhenSystemBusy,IdleTimeout,SkipReconciliation,ReadOnly,InputOutputThrottleLevel,InputOutputThrottle,AtStartup,FastStart,Cores,Memory,CimClass,CimInstanceProperties,CimSystemProperties,PSComputerName

なお、項目の詳細については、MSドキュメントを参照ください。

ここでスケジュールされたガベージコレクションは、通常のものになります。
この通常の重複排除領域のガベージコレクションはデフォルトでは週1回実施されます。

そのジョブの4回に一度、Fullのガーベージコレクション(深くブロックの使用状況をチェックしてより多くのブロックを削除する)が発生するのですが、
このタイミングでVSSが有効になっている場合、VSSがクリアされる場合があるので、場合によっては無効化したい場合があります

その場合、以下のコマンドを実行します。

(設定)
Set-ItemProperty -Path HKLM:\System\CurrentControlSet\Services\ddpsvc\Settings -Name DeepGCInterval -Type DWord -Value 0xFFFFFFFF


(確認)
Get-ItemProperty -Path HKLM:\System\CurrentControlSet\Services\ddpsvc\Settings

これで、インストールは完了になります。
ちなみにサーバOS(WinSV2012以降)であれば、サーバマネージャ(GUI)もしくは、Powershellで以下のコマンドを実行することでインストールできます。

Install-WindowsFeature -Name FS-Data-Deduplication

詳細はMSドキュメントを参照して下さい。


次回は、重複排除の有効化と、設定を実施する予定です。