Insufficient data from Andrew Fryer

The place where I page to when my brain is full up of stuff about the Microsoft platform

February, 2013

  • Evaluate this - Deduplication

    Deduplication is the business of compressing data without loss and this is now built into Windows Server 2012 as a role service.  The official marketing from us states that you will save somewhere between 20-70% of the space on your file servers if you implement this. If that’s sounds interesting my screencast shows how to configure and monitor it..



    The clever thing about deduplication is that it’s built into NTFS, so you can apply it to any non system volume without the need for specialist storage.  There are some caveats:

    • You can’t use it on the system volume
    • It works on closed files so it won’t do any good against virtual hard disks or SQL Server database files for example. However you could and in some cases should turn it on inside a virtual machine and get the benefits of deduplication that way.
    • The deduplication process does not happen when you write a file to disk, it runs in the background and is typically scheduled.  The default setting is to only deduplicate files older than 5 days the odds are that a file that hasn’t changed for 5 days won’t change that much again and is worth deduplicating.
    • It will slow down your initial reads a bit (approx. 3%), but once a file is cached performance will improve a bit (approx. 8%)
    • You’ll want to have a backup solution that is compatible with this new feature e.g. System Center Data Protection Manager 2012 SP1 as well as VEEAM and Symantec Backup Exec (with more vendors updating their software all the time)

    To try this yourself all you’ll need is an Evaluation Copy of Windows Server 2012. Having got the idea you may also want to see how well it will work on your data. To do that install it turn on the deduplication e.g. in Powershell..

    Add-WindowsFeature –Name “FS-Data-Deduplication”

    and then copy windows\system32\ddpeval.exe and run this against a file share, volume etc.  Note that this might put some load on your network but otherwise shouldn’t be too invasive as it will run in the background (possibly for hours on a big volume) before telling you what you would save if you enabled this feature.

    Finally thanks to my good friend Simon;  he has done most of the legwork in setting up deduplication for our IT camps and I have shamelessly used that for the screencast.

  • Evaluate This – Storage Spaces

    So far in this series I have used the new storage features of Windows Server 2012 as a  place to run VMs from, but there’s more to it than that.  Shared storage used to mean presenting SAN storage inside a cluster, and you relied on your SAN experts to provision the storage you needed.  However with SAS / JBOD technologies coming along it’s possible to create storage that’s still highly available.  However you might still want access to some of the clever things a SAN can do like thin provisioning, where you define storage you plan to use but actually haven’t got yet.  So in this short screencast I show how storage spaces in Windows Server meets this need..


    To try this out all you’ll need is one virtual machine running on one laptop and an Evaluation Copy of Windows Server 2012


    I used a bunch of SCSI disks in my demo VM to build a storage space and they were all the same size. They don’t have to all be SCSI,  they could be attached via USB, SATA etc. and can be of varying size and performance.  However if you want to  create a storage pool in a cluster then the disks must be SAS (Serial attached SCSI) for that.  Also bear in mind that the pool will work down to the slowest disk and not up to the fastest.

    I do have a script to build my fileserver, which in turn relies on a configuration file to add in the roles and features I need, and it builds form a sysprep copy of Windows Server 2012 with an answer file to join it to my Contoso domain.  It does have a really useful function from Simon to rename the VM in active directory (so it is called FileServer1 in AD as well being the name of the VM in Hyper-V).

    Rather than running a virtual machine or using the storage space for ordinary files, in this screencast I used it to host a SQL Server database. SQL Server 2012 has support for storing databases on SMB shares and  I have seen 200,000 iops in SQL Server where the database is on a remote share like this.  However the UI in Server manager doesn’t seem to allow you to navigate across shares (have I been away form SQL Server too long?) so I did the attach from a simple  SQL Server T-SQL script.

    Storage spaces often raises a lot of questions at our camps so here’s a good FAQ on TechNet.  If you are curious about performance my advice is to test your big idea thoroughly and check this script and whitepaper to ensure you have the optimal setup.

  • Evaluate This–Remote Desktop Services

    In my last post I showed how easy it is to create virtual desktops in Windows Server 2012, and while that’s now a core part of providing remote desktops to your users there is still the good old fashioned terminal services, or to give its modern name Remote Desktop Services (RDS). RDS also changes quite a lot in Windows Server 2012 and so I have made this short screencast to show how to set it up..


    To try this yourself all you’ll need is an Evaluation Copy of Windows Server 2012


    VDI and RDS are designed to compliment each other:

    • The client is using the same protocol (RDP - Remote Desktop Protocol) to interact with a remote desktop or a virtual desktop
    • They share services for example; the remote desktop web access portal for users to access remote desktops and applications, and the remote desktop broker that controls access to the resources on offer.
    • You can create RD RemoteApp applications from both an RDS Pool or a VDI Pool.  If you aren’t familiar with RD RemoteApp it’s a way of delivering an individual application over RDP so it looks like it’s on a users desktop but actually its executing server side. I have seen it being used for providing legacy applications or those that need to run in a secure environment.

    So when to use what?

    I think this comes down to efficiency and manageability.  You can support far more (typically 12x)  remote users with RDS than with VDI running on the same server hardware.  So if possible use RDS complimented with technologies like App-v to virtualise application delivery to delegated users.  That way you’ll just have to maintain the few servers providing RDS and secure the users profile disks. 

    It may be that some or of all your users can’t use RDS because they applications they want don‘t ‘like’  being run from and RDS server.  In that case the next most efficient option is pooled VDI where a virtual desktop is shared rather than being dedicated to a particular user. In this scenario you just have manage one virtual desktop, and then control the deployment of revisions to that (which may just include patches or whole new applications). Your final option is to give your users personal virtual desktops which means that each of these needs to be managed in exactly the same way as if they have real desktops.  What’s good about VD/RDS in Windows Server is that the users get a good experience either way with multi touch support, smooth video streaming and USB redirect so they can use webcams, dongle, card readers etc.

    Finally if you are planning to do this in your organisation, I would suggest a really thorough trial and to over provision hardware both on the server side to provide a great user experience and also to provide good quality big monitors to win the hearts and minds of your users.