Enabling Data Deduplication in Windows 8.1

When you do a lot of deployments whitin your Windows 8.1 Client Hyper-V machine, the disk space is getting more and more. Because I’ve only one SSD drive of 250 GB, the free space becomes critical. I’ve got to find a way to reduce it. I read a few blogs and found a solution which is the dedup. But data deduplication is not available whitin Windows 8.1.

This method is not officially supported by Microsoft ,however found a way to save my disk space.

This method requires the CAB files from the Windows Server 2012 R2.  Either you can get those files from a Windows Server 2012 R2 or you can download the files from my OneDrive here.
The files are as follow :
• Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab
• Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab
• Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab
• Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab
• Microsoft-Windows-VdsInterop-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab
• Microsoft-Windows-VdsInterop-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab

I downloaded the files to a folder as below and installed all the CAB files:

DataDedup_02    DataDedup_01

Next step is to install the CAD files on your Windows 8.1 machine. I’ve used DISM to install these files.

DataDedup_03    DataDedup_04

After you’ve succesfully installed the CAB files, you’re able to install the “Data Deduplication” role. I’ve also used DISM (see screenshot below).

DataDedup_05    DataDedup_06    DataDedup_07

The next step is to enable Data Deduplication on the volume or volumes. First I’ve readthe current free space on my E: drive. After enabling Data Deduplication on this volume, I’ve manually started the Data Dedup task.

DataDedup_08    DataDedup_09    DataDedup_10

DataDedup_11    DataDedup_12    DataDedup_13

DataDedup_14

But after enabling Data Depuplication and running the Dedup Job, there’s nothing happening!! Why?? Because the minimumFileAgeDays is 3 and my files on the hard drives are 2 days old 🙂 So I’ve added the MinimumFileAgeDays to 0 (zero days). After running the Dedup Job again, let’s have a look on the current free space!! Dedup is doing his job!!! 🙂 Cool!

DataDedup_15    DataDedup_16    DataDedup_17

DataDedup_18    DataDedup_19    DataDedup_20

DataDedup_21    DataDedup_22

The final screenshot are the commands I’ve used to configure this in my lab environment. Once again, this method is not officially supported by Microsoft.It’s a great way to save some disk space on your expensive SSD hard drive! Now you can deploy more virtual machines on the same hard drive, so happy automation and deployment!! 🙂

How to: Enable data deduplication in Windows Server 2012

A very cool new feature within Windows Server 2012 is Data Deduplication. Windows will look on block level to duplicate files and removes this files with pointers to the duplicate files. This can save you a lot of diskspace! Data Deduplication can be enabled on all the volumes of your server, except the boot volume!

By default, Data Deduplication will only deduplicate data that is not changed over the last 30 days. You can change this value to any numbers of days you want. Lets enable Data Deduplication. After enabling Data Deduplication, there are three scheduled tasks available (only vissible through PowerShell).

In my example I’ve copied the Windows Server 2012 ISO three times to my ISO partition. So there are three folder called ISO1, ISO2 and ISO3. All the folder contains exact the same data. So three times the ISO files are around the 10 GB of storage on my disk. Watch the result after enabling this great new feature….do you have any idea?? 😉

1.) Open the  Server Manager and enable Data Deduplication on the File and Storage Services server role.
2.) Or open PowerShell and enable this rol
Import-Module ServerManager
Add-WindowsFeature -name
FS-Data-Deduplication
3.) Enable Deduplication on the specific volume or volumes
Import-Module Deduplication
Enable-DedupVolume
E:
4.) View the new scheduled Deduplication jobs
Get-DedupSchedule
5.) Change the MinimumFileAgeDays value to 0
Set-DedupVolume E: -MinimumFileAgeDays 0
6.) Start the Deduplication jobs manualy
Start-DedupJob E: -Type Optimazation
Start-DedupJob E: -Type GarbageCollection
Start-DedupJob E: -Type
Scrubbing
7.) After a few minutes, watch the result!
Get-DedupStatus
How cool is that. Are you also going to enable Data Deduplication? 😉

DEDUP_02    DEDUP_03    DEDUP_04

DEDUP_05    DEDUP_06    DEDUP_07

DEDUP_08    DEDUP_09    DEDUP_10