Windows 8 (and Server 2012) includes a ton of great new features and one of the new features is (I’m not talking about the Start Menu , I still hate the new Start Menu Storage Spaces, a new Windows utility that allows you to connect multiple data storage devices , regardless of being Internal or External such as USB Hard Disks.
So What Is Storage Space ? What about benefits ?
Now Storage Space itself is not new , Microsoft first introduced Storage Space for Windows Home Server version 1 and it is known as Drive Extender and it was developed by the Server Team (which should be reliable and good). The beauty of storage space is that you can combine all these hard disks and create “pools” such as “Pictures” , “Movies” , “Documents” and they work just like any other hard disk. Of course this kind of technology is not something new , in fact RAID (Redudant Array of Independent Disks)allows you to the same thing and it offers variety of different settings and in Linux , you would have LVM . What Microsoft is done is that they made it easier for to combine multiple storage system which spans across different mediums (Internal & External) which offers redundancy and performance.
In simpler terms , imagine you can create a 3TB of storage pool (and you have 1TB of hard disk but you have plans of buying 2TB hard disk later). So what you can do is that you can create a storage pool of 3TB of hard disk with your current 1TB. Now as the storage nears the capacity , Storage Pool would alert you saying that you are low on capacity and you need to buy more storage to store. It is simple as that. Now you may ask , what is the purpose of using Storage Space
Simple , imagine your steam game collection , now on a normal hard disk when you run of space , you’ll have to delete and move , now with storage space , you just need to keep adding more hard disk without worrying about relocating and other stuff. Your storage grows with you as you expand. Plus with the option of providing mirror , it keeps your data safe
So How Does It Work ?
Just Like RAID , Windows 8 Storage Spaces offers three sort of configuration
Stripe Data (RAID 0) – Just like in RAID , Storage Space would stripe data across a pool (several hard drives) and what you get is improved performance as Data is now written on multiple hard disks , this would give you a boost in hard disk read/write performance. However keep in mind that if one of the hard disks in the pool fails , your entire data is gone
Mirror (RAID 1) (Two/Three Way) - Storage Space offers RAID 1-like mirroring. So suppose if you have two hard disks in your pool and you have created a Mirror Drive , basically content are duplicated across both drives. So suppose if one of the drives fail , your data would be still accessible on the other drive . Three way offers extra protection as data is duplicated across three hard disks not just two
Parity (RAID 3/5) -Blocks are striped just like RAID 0 , but now you have a parity bit (parity bit are like fail over things , so for instance , if Disk 1 stores 0 and Disk 1 stores 1 , by using the principle of XOR , the parity disk would store 1). The beauty of is that suppose if one of your hard disk fails , your data is still safe. All you have to do is get a new hard disk , fit it in and it is automatically recovered. It uses the beauty of XOR , it is able to restore data in lost disk
Keep in mind that in order to use Storage Space , data on existing disk would be lost completely and Storage Space will not work on the hard disk whereby the operating system resides.
So which one do I use ?
It really depends on what you plan to do. In my configuration (on Server 2012 which is my File Server ) , this is how I have did. What I did is that I have added all 3 hard disks to create a pool. From the pool , I have created three different storage system (virtual disks) for different purposes
Documents – To Store Important Documents such as work related file or scanned copies of my passport. I just want to ensure that the data is replicated to all of my 3 disks. I did a 3-way mirroring. I do not care about performance , as I just want the data to be reliable
Pictures (I should rename it to Movies/Old Stuff/Archive) – These are stuffs which I plan to store them but do not have any plans to frequently access them but I want to ensure that they are protected against a disk failure. So in an event of disk failure , the data can be reconstructed by swapping out the failed drive and putting in a new one. However keep in mind that using parity has heavy performance penalty , it is recommended to be used as drive which you do not frequently access because of the parity calculations
Stuff – I use Raid 0 here , the reason is simple , I care about getting extended storage space (combining both of my 1TB) . However I do not care about the things which are stored in this virtual volume , which mainly includes downloaded things such as Movies , Songs. Suppose if one of my drive fails , I would lose my entire collection.
These are my storage space settings. However in Windows 8 things are much more simplified , but the core principle remains the same. It is not complicated as how it is being done in Server 2012 but simply straight forward. Just go to Control Panel in Windows 8 and you can add drives very easily – bam
What are the advantages and drawbacks of using Storage Space?
Now let us talk about the positive aspects of Storage Spaces
Flexibility - Storage Space provides thin providing that allows you to create a volume with the size larger than the total capacity of all your actual hard disk. You can create a 5TB hard disk by only having 1TB of hard disk at the moment. As you run out of free space, Windows prompts you to put in more disk before you are allowed to use the storage pool.
Easy To Use - Storage Space provides straight forward way of setting up your own pool. You don’t have to go to BIOS or do complicated things like how you would setup RAID. It provides easy to use interface in setting it up which makes it very easy to setup your own storage pool
Provides Fault Tolerance - Storage Space provides fault tolerance against hard disk failures for end-users , this is pretty much like the earlier advantage. Now home users (like you and me) could have enterprise-like feature which is bundled for free. There is no need to backup into two different hard disk manually. Storage Space takes care of that
There are some disadvantage of using Storage Space
Hard Disk Requires Formatting – To add a hard disk into storage pool , Windows will format existing hard disk , so if you have important data , you would have to move it out. It does not work with existing hard disk which already contains data
Complexity in Recovering Data - Well if your Windows 8/Server 2012 computer does not work. You are pretty much dead , you can connect these storage-space hard disk into another Windows 8/Server 2012 computer and pray that it sees it and you are able to recover. If you try to plug them in a Linux/Windows 7/MacOS computer , they are un-readable
Performance Hit - It is not as fast as hardware RAID controller especially if you use parity as parity count pretty much hits hard on the hard disks and CPU (in order for it to calculate the parity). Now RAID controller offloads the calculation by having a dedicated CPU which does exactly that. Storage Space uses your computer CPU to do the calculation.
Microsoft provides simple and easy to use way for consumers (like me and you) to build storage space in ever expanding world of storage. You do not have to be a wizard to use it. The advantage of using Storage Space clearly outweighs the disadvantage. However having said that I would not use Storage Space for mission critical data. If you want the data to be safe at all costs , be sure to make another backup (such as to dropbox or to somewhere).
This TechNet article covers all you need to know about Storage Space . I highly recommend you to read if you want to know more about Storage Spaces