Sunday, December 14, 2008

Page 3: Parity and Common types of RAID

In the majority of RAID implementations, a whole drive, or an area of one or more of the drives in the array is dedicated to storing parity information. Essentially, each time a bit of information (a digital 1 or 0) is written to every drive in a striped RAID array, an additional parity bit is generated and stored. The value of this bit is based on whether the total of the bits written to the striped drives is odd or even.
For example, take a three disk RAID array, in which two drives are striped together to hold data, and the third drive is dedicated to storing the parity information. Each time a bit of data is written to each of the data drives, an additional parity bit is written to the parity drive. For argument's sake, let's say that if the value of the two data bits is even (0 and 0 or 1 and 1) then the value of the parity bit would be 0, and if the value of the two bits is odd (0/1, 1/0) then a 1 would be written.
In this way, if one of the data drives fails, a new drive can be added and by comparing the information present on the surviving data drive with the corresponding parity information from the parity drive, the missing information can be written onto the replacement drive a bit at a time.
If any given bit from the parity drive has a value of 1, then we can see (from the values we laid out above) that the total value of the corresponding data bits must be odd. So by looking at the bit value from the surviving drive, we can determine if the value that needs to be written to the replacement drive should be a '1' or a '0.'
RAID technology began as a method to provide additional data security to business servers, and many of the RAID levels are still almost exclusively used in the business domain, due to the cost of the required hardware. Since the lower levels of RAID are easily implemented on modern computers and need only a pair of drives and a RAID-capable drive controller (hardware) or operating system (software), RAID 0 and RAID 1 implementations have become common in the high end desktop/PC enthusiast market.
RAID 0 is used to gain additional performance from conventional drives by pairing them up, while RAID 1 provides a very simple and effective form of backup by duplicating or 'mirroring' all data on a second drive.
Some common Types of RAID
Most Hardware RAID controllers intended for the enthusiast or small business markets support only three levels of RAID; RAID 0, 1 and 0+1. These are the only levels of RAID that do not require the use of parity, as this feature adds greatly to the complexity and expense of the controller.

RAID 0 uses multiple hard drives to stripe data over one large logical drive. While there are physically two drives, the computer logically sees just one. The RAID 0 configuration is typically used when there are data-intensive applications because it offers the fastest data access, though no redundancy.
Generally speaking, software RAID will not support parity, limiting it to the above three levels of RAID. This is the case with Windows XP Pro.
Raid 0: Striped array without fault tolerance
RAID 0 is the most common 'enthusiast' implementation, and the main reason why hardware RAID controllers have found their way onto desktop motherboards from the back corridors of server rooms and IT departments. The attraction is that RAID 0 can essentially combine two hard drives into one using striping, and greatly increase the speed that the drives transfer data.
RAID 0 requires a minimum of two physical drives, but has the advantage of not requiring a parity drive or using space for parity on any of the disks in the array, allowing their full capacity to be used for data.
Of course, this has one obvious disadvantage. There is no fault tolerance. Period.
In fact, technically the reliability of the logical drive created by this form of RAID array is halved for each physical drive present, since if any drive fails, all the data is lost...
This is not as big a deal as it may sound, since modern drives generally last at least 2-5 years of constant use, and the performance gains make RAID 0 an excellent choice as the operating system and software drive for your computer. Crucial data is best backed up elsewhere however, like on a RAID 1 configuration for instance.

No comments:

Post a Comment