Resiliency
We mentioned above that storage spaces
borrow a leaf or two from the RAID playbook and this is clearly apparent when
it comes to resiliency - that is, the system’s ability to keep your data safe
if one of the drives in your pool should fail.
if you like, you can choose to store each
file in one physical location only, exactly as if you were using a single,
standalone drive. This is the most space efficient arrangement, but in terms of
the safety of your data it’s pretty much the worst thing you can do. If a disk
containing precious files should fail, they’re gone forever (or at least until
you can recover them from a backup).
If
you like, you can choose to store each file in one physical location only,
exactly as if you were using a single, standalone drive.
The default resiliency option is therefore
“Two-way mirror”: in other words, all the data you write to your storage space
will be written to two physical drives. Clearly this means each file will take
up double the space - in practice, this is presented as a halving of the
available capacity in your pool - but if one of your disks fails, Windows can
seamlessly keep going. using the mirrored copy.
This idea of mirroring is similar to RAID
level 1, but it's implemented differently. In a RAID array, mirroring works
using pairs of identically sized disks, with each file being stored in the same
location on each. That's a simple approach, but inflexible, and it means that
if one mirror fails, all the data on its twin ¡s left without protection until
you replace it.
Storage Spaces takes a much more
intelligent approach to two-way mirroring, splitting your files into blocks
(called “slabs”), which are then automatically distributed arid duplicated
across physical disks as available. This means you can use mirroring with any
pool that contains two or more drives, with no need for the disks to be of
equal size.
It also means you don’t need to rush to
replace faulty disks: when a disk fails, and Windows detects that some data has
become un-mirrored, it can automatically reduplicate the unprotected data onto
another physical disk so long as there’s one available in the pool with enough
space to receive the data.
Clearly, when your storage space is spread
across three or more disks of plentiful capacity, two-way mirroring provides a
very good level of resilience, with almost no manual administration required.
But there’s still a point immediately after a disk failure, while re-mirroring
is in progress, when some of your data is stored only on a single physical
drive. If you’re working with mission-critical data, that may still be
uncomfortable.
Storage Spaces therefore also offers the
option of three-way mirroring, so that every file you save is kept on three
different physical spindles. Even when a disk fails, there will still be two
complete copies of your data within the pool, and a third one will be
automatically recreated as and when the drive space is available. This approach
isn't for everyone, though. So as not to bog down performance, three- way
mirroring requires a pool of at least five disks. Yet, even with two-way
mirroring, storage spaces are a safe way to store data.
Parity
The final resiliency option is to use
parity instead of mirroring. As we mentioned in our introduction to RAID,
parity strikes an attractive balance between space efficiency and data
resiliency. It requires a pool of at least three disks to function: when you
write a file to a parity-based storage space, half of the file is written to
disk one, half is written to disk two, and checksum information derived from
the contents of the other two drives is written to the third disk. If any one
of the disks is lost, its contents can be recreated from the contents of the
other two, so you can replace the faulty disk and keep on working with no data
loss.
Choosing parity mode thus gives you
resiliency that's equivalent to two-way mirroring, while taking up a capacity
that's only 150% of the total size of your files, rather than being fully twice
the size.
Parity may look like the best of both
worlds, but it has its limitations. Unlike the mirrored system, there's no way
to use an additional disk for an extra degree of security, so if one of your
three physical drives should fail, you'll be unprotected against further
disasters until you replace it.
Parity also offers worse write speeds than
mirroring (see Disks and performance, right), partly because the computer has
more work to do. Microsoft recommends you use mirroring for files you need to
update frequently, and reserve parity for things such as media libraries, where
files are typically written once and thereafter only ever read.
The good news is that setting up a system
in this way is simpler than it may sound. So long as your pool contains three
or more physical disks, it can simultaneously host one mirrored storage space
and one parity-based one. Simply choose which one to save your files to and
Windows will handle all the complicated business of working out which slabs of
data to write where, and how many times.
What Happens When A Disk Fails
When a hard disk fails in Windows, the
results can be pretty catastrophic. The operating system doesn't respond well
to files suddenly becoming inaccessible or invalid, and if it's using them at
the time, it may freeze or crash. Within storage spaces, hard disk failures are
an expected eventuality, and are handled much more gracefully. An informative
Action Center alert pops up to let you know the drive encountered an error and
has been taken offline, and the system continues to run smoothly. If your pool
contains drives within a multi-drive enclosure that supports the SCSI Enclosure
Services (SES) protocol, then Windows will also illuminate the appropriate
error light, so you can see at a glance which physical disk has a problem.
When
a hard disk fails in Windows, the results can be pretty catastrophic
In most cases, you won't actually lose
access to the storage spaces that had been making use of the faulty disk. As we
mentioned above, if your data is mirrored you can simply carry on working. Even
if you're using a parity based drive, the storage space will continue to work
so long as a majority of the disks in the pool are present and healthy,
although data security may be reduced. Depending on the severity of the situation,
you might see a warning in the control panel advising you of "reduced
resiliency"; in cases of serious failure, the storage space will be
automatically taken off line until you can remedy the situation.
Using Your Storage Spaces
Storage spaces appear in Windows as regular
drives, and you can use them just like individual physical disks. You can share
them over a network, control access to them using regular Windows management
tools, and even encrypt them using Bit Locker. And if heaven forbid something
should go wrong with your PC, you can hook up the drives in your pool to a
different Windows 8 system and your storage spaces will automatically be
recognised and mounted.
Windows
8 BitLocker status codes
The one thing you can't currently do is boot
from a storage space: the Windows boot loader doesn't recognise pools and
spaces, so they must be mounted from within the operating system.
As our walkthrough opposite shows, the main
operations needed for creating and maintaining Storage Spaces is accessible
through a friendly graphical front-end.
However, if you're looking for more
fine-grained control perhaps if you're planning to set up Storage Spaces for
use in an enterprise environment - you'll be pleased to learn that storage
spaces can be configured and administered through a set of new PowerShell
cmdlets. You'll find a reference guide at tinyurl.com/ a3tbnuj.