Build a first line of defence with Raid and never fear disk failure again
Disk failure is probably the greatest fear of any PC owner. After all, while the disk itself can be replaced, the data may not be so easy to recover.
And while we all know we should back up regularly, it’s fair to say the vast majority of us fail to put adequate contingency plans in place.
Proper backup demands that data be copied onto media which can be physically transported to another site, thereby protecting against fire, flood and theft along with disk failure.
While this is the most secure means of backing up important data, it can also be useful to build extra redundancy into your PC to at least give a first line of defence against disk failure.
Raid is a technology developed for this purpose. Standing for Redundant Array of Inexpensive hard Disks, Raid uses two or more disks working together as a single logical volume to deliver various combinations of greater reliability, performance or capacity.
It has long been employed in servers and other mission-critical applications to improve storage reliability.
Raid controllers manage all the technicalities, automatically distributing your data across multiple disks and, if required, rebuilding the array after a broken disk has been replaced.
There’s a degree of processing involved in this which, on basic budget hardware Raid controllers, is generally farmed out to your main CPU. Software-based Raid solutions, such as those built into many operating systems are normally entirely dependent on the host CPU.
Alternatively, higher-end hardware Raid controllers use dedicated onboard processors to take the strain.
With Raid controllers fitted to virtually every new motherboard these days, it has become a mainstream technology which could surely benefit desktop users wanting to protect their data.
Raid does, however, come in several different flavours and it’s important to know which is best for your requirements. Suffice it to say the basic controllers of desktop motherboards may also not be as powerful or flexible as you’d like.
And while Raid uses normal hard disks, the arrays may not be easily connected to different systems should you want to upgrade or replace your motherboard, for example.
Here we’ll examine the pros and cons of Raid then look at how popular versions work in practice.
Raid issues
One issue to be aware of when implementing any type of Raid is how easy the
array is to transport. Users of single hard disks are used to being able to
connect them to any other system and immediately access the data.
This is because basic hard disk controllers are compatible with each other.
A Raid array also requires a compatible controller to operate, but many are proprietary and you may need one from the same manufacturer, or even an identical chipset to that which originally created the array.
Clearly problems can occur if you can’t find a compatible replacement. In this worst-case scenario you wouldn’t be able to access your array or the data.
Separate controller cards are often more flexible than integrated motherboard chipsets. You’re not putting all your eggs in one basket and, so long as your array’s not the boot volume you should be able to remove the disks and card and connect them to a different system to access the data.
Another lesser, but annoying issue that affects all types of Raid is the requirement to install a driver for the controller.
While this may easily be done under Windows when adding Raid to an existing system, anyone who wishes the array to be their bootable ‘C’ volume will need the driver on a floppy disk for use during Windows’ Setup.
To be fair, this also applies to less common SCSI and serial ATA (Sata) controllers, but it’s still highly inconvenient to require access to a floppy drive in this day and age.
It’s worth mentioning that Raid arrays with their multiple hard disks make more noise, consume more power and occupy more space than a single disk.
This makes them better suited to a server-type machine in a back room rather than a standalone entertainment PC in your main living area.
Raid in practice
Since a Raid array is limited by the lowest capacity and slowest disk in the
array, it’s best to use identical drives.
So to put various Raid options to the test we bought three Seagate 300GB 7200.9 Sata disks (pictured below left); at the time of writing the 300GB models represented good value per GB.
For flexibility we fitted these to a separate Raid controller card: a Promise Fasttrak TX4310 which includes support for Raid 0, 1 and 5 on up to four Sata disks.
For ease of installation and transportation, we implemented our Raid arrays as secondary storage volumes on a 2.13GHz Pentium M 770 system with an existing boot drive. The TX4310 then needed only a Windows driver to be operational.
Like many Raid controllers, the TX4310 can either be configured at the Bios level as the machine starts up, or using a web-based management system under Windows.
Using either it’s simple to configure any connected disks into a Raid array. The process takes a matter of seconds, after which you should use Windows’ Disk Management tools to partition and format the volume as if it were a single disk.
Since Windows XP Pro offers software Raid, you should only ‘Initialise’ the new volume and skip the option to ‘Convert’ it.
We tested the system with three Raid configurations: Raid 0 and 5 with three disks each, and Raid 1 with two disks as it only works with pairs. In each case the stripe block size was set to the default 16KB. Onto each array we copied 20GB worth of Media Center recordings.
Capacity, faults and rebuilding
After formatting with NTFS, the two-disk Raid 1 array offered 279GB of storage,
thereby losing 50 per cent to redundancy. The three-disk Raid 5 array offered
558GB, losing 33 per cent to fault tolerance, while the three disk Raid 0 array
boasted the full capacity of 838GB.
To simulate disk failure we powered down the test system, disconnected one of the disks, then powered back up again.
As expected the Raid 0 array went offline with none of the data accessible. If one of the disks had truly failed, we’d have lost all our data.
Both the Raid 1 and Raid 5 arrays were labelled critical, meaning there was no longer any fault tolerance available, but both volumes remained fully accessible, allowing us to write data or play media files as if nothing had happened.
The benefit of Raid 1 and Raid 5 is their ability to rebuild the array once a new disk has been connected. Using the Promise Webpam utility we selected the Rebuild option, identified the replacement disk and set it off.
The 279GB Raid 1 array took two hours and two minutes to fully rebuild with a zero to four per cent processor hit.
The 558GB Raid 5 array took two hours, 40 minutes to rebuild, with a higher, although not unacceptable CPU hit of four to 11 per cent.
Both arrays could still read and write during this time and media playback remained smooth. The rebuild times didn’t change for smaller data quantities.
The best option
In terms of these tests, Raid 5 was the most flexible option, and it was
reassuring to find its rebuilding process didn’t strain the processor even
though we were using a budget controller card.
We’re also pleased to report each array was also accessible in other systems (with existing boot drives) by inserting the controller card and installing the Windows driver. If you’ve been using Raid, we’d be interested to hear from you.
Common Raid varieties
There are several types of Raid in use. Here are the most common.
Raid 0 uses a technique called Striping, where data is interleaved across two or more disks. Since these disks can be read and written to simultaneously, the performance can be increased.
Raid 0 also allows you to enjoy the full capacity of all the disks in the array, so an array with three 300GB disks would offer 900GB of capacity.
Raid 0 has no fault tolerance though, so if one disk fails, you lose everything. This makes it unreliable and therefore only suitable for non-critical data storage, such as a scratch disk or virtual memory.
Raid 1 uses a technique called Mirroring, where an identical copy of the data is stored on a second disk. Should one disk fail, you can access the data on the other one, allowing you to fit a replacement and rebuild the array.
The downside is losing 50 per cent of your total disk capacity.
There are several Raid levels beyond 0 and 1 that employ combinations of Striping and Mirroring or other fault-tolerance techniques to provide greater overall capabilities. One of the most commonly used is Raid 5.
Raid 5 uses three or more disks and stripes data across them for increased performance. The clever part is that parity data is also stored on each disk, providing fault tolerance. Should one disk fail, the data on the array remains available, and, like Raid 1, you can fit a replacement disk and rebuild the array to enjoy full fault tolerance.
Like Raid 1 there’s a capacity price, but for Raid 5 you only lose one disk’s worth of capacity in the entire array. The overall losses therefore decrease as you fit more disks.
So if you have three disks in a Raid 5 array, you lose 33 per cent. In a three 300GB disk array, this would leave you with 600GB of storage.
Configure four disks with Raid 5 though and you’ll only lose 25 per cent. If they were 300GB models, you’d have 900GB of storage.