Windows 8 has a new feature called Storage Spaces which helps a PC with Microsoft's upcoming operating system recover from a hard drive failure. We have already reported on the feature before but today Microsoft's newest entry on its Windows 8 blog site gives more details on Storage Spaces in a post written by Microsoft's Rajeev Nagar.
One of the new things that PC users can do with Windows 8's Storage Spaces feature is the Storage Pool, which connects two or more physical disks into one virtual disk. Nagar writes, "This virtual disk is usable just like a regular physical disk – you can partition it, format it, and start copying data to it." He adds, "Resiliency is built in by associating the mirrored attribute, which means that there are at least two copies of all data contained within the space on at least two different physical disks. Because the space is mirrored, it will continue to work even if one of the physical disks within the pool fails."
Another cool thing about Storage Spaces is that even if you have two 2 TB hard drives, you can create a virtual Storage Pool from those drives that amounts to 10 TB. Nagar writes:
The magic that allows us to create a 10TB mirrored space on 4TB of total raw capacity is called thin provisioning. Thin provisioning ensures that actual capacity is reserved for the space only when you decide to use it, for example, when you copy some files to the volume on the space. Previously allocated physical capacity can be reclaimed safely whenever files are deleted, or whenever an application decides that such capacity is no longer needed. This reclaimed capacity is subsequently available for usage by either the same space, or by some other space that is carved out from the same pool. We achieve all of this through architected cooperation between the underlying file-system (NTFS) and Storage Spaces.
With thin provisioning, you can augment physical capacity within the pool on an as-needed basis. As you copy more files and approach the limit of available physical capacity within the pool, Storage Spaces will pop up a notification telling you that you need to add more capacity. You can do so very simply by purchasing additional disks and adding them to your existing pool.
You can also add more physical disks to the Storage Pool and you can also change the size of the maximum logic space of that pool if needed. If one or more of the disks fail, Ragar writes that the Storage Pool's mirrored setting has that covered. He states, "This mirrored setting ensures that we always store at least two (and optionally three) complete copies of data on different physical disks within the pool. This way, despite partial or complete disk failure, you’ll never need to worry about loss of data.
There's also a second method in Windows 8 for helping to recover from a hard drive issue called parity. Nagar writes:
While conceptually similar to mirroring, parity-based resiliency utilizes capacity more efficiently than mirrored spaces do, but with higher random I/O overhead. Parity spaces are well suited for storing data such as large home videos, which have large capacity requirements, large sequential (predominantly append) write requests, and an infrequent-to-minimal need to update existing content.
So what happens if a hard drive fails in a Storage Pool set up with parity-based resiliency? In that case, Nagar writes:
When a disk fails, the parity space recovers equally transparently and automatically as does the mirrored space. For parity spaces, Storage Spaces utilizes the parity information to reconstruct affected slabs for all affected spaces, and then automatically reallocates the slab to utilize any available hot-spare disk or any other suitable disk within the pool (just as it does for mirrored spaces).
Windows 8 users can create separate Storage Pools, one with mirrored resiliency and one with parity resiliency, from the same physical hard drive collection for different tasks. Nagar states, "Slabs for both spaces are intermingled, and optimally spread over all available physical disks, although each space uses different mechanisms to recover from physical disk failure."
You might use the mirrored pool for documents and the parity pool for video, audio and other multimedia data storage. Nagar goes over in detail how to create both kinds of example Storage Pools in the blog entry. The upcoming Windows 8 Beta will add a new way for users to use a more menu-based way to create Storage Spaces and Storage Pools which he also goes over in detail.
The blog site also has an FAQ section where some common questions are answered about Windows 8's Storage Spaces feature. Here's just one of them:
Q) Are Storage Spaces some kind of RAID?
If it is, what RAID versions do you implement? Fundamentally, Storage Spaces virtualizes storage in order to be able to deliver a multitude of capabilities in a cost-effective and easy-to-use manner. Storage Spaces delivers resiliency to physical disk (and other similar) failures by maintaining multiple copies of data. To maximize performance, Storage Spaces always stripes data across multiple physical disks. While the RAID concepts of mirroring and striping are used within Storage Spaces, the implementation is optimized for minimized user complexity, maximized flexibility in physical disk utilization and allocation, and fast recovery from physical disk failures. Given these significant differences in objectives and implementation between Storage Spaces and traditional inflexible RAID implementations, the RAID nomenclature is not used by Storage Spaces.
Image via Microsoft