Introduction to RAID
Storage systems preserve data that has been processed and data that is queued up to be processed and have become an integral part of the computer system. Storage systems have advanced just as other computer components over the years. The RAID storage system was introduced over 15 years ago and has provided an excellent mass storage solution for enterprise systems. Let’s get a little more history about the RAID concept and they work.
History of RAID
RAID is an acronym for Redundant Array of Inexpensive Disks. The concept was conceived at the University of California, Berkeley and IBM holds the intellectual patent on RAID level 5. The University of California, Berkeley researchers, David A. Patterson, Garth Gibson, and Randy H. Katz worked to produce working prototypes of five levels of RAID storage systems. The result of this research has formed the basis of today’s complex RAID storage systems.
Some of the design goals of the RAID storage system were to provide performance improvements, storage reliability and recovery, and scalability. The redundancy concept employed in the RAID system is unique and provides a method to recover if one drive should fail within the system. In fact, today’s RAID controller cards have the ability to continue reading and writing data even if one drive is ‘off-line.’ So how does the RAID controller card manage the individual disks and provide fault tolerance?
The heart of the RAID storage system is controller card. This card is usually a SCSI hard disk controller card (however, IDE RAID controller cards are becoming quite common). The task of the controller card is to:
Management of Individual Drives
The RAID controller will translate and communicate directly with the hard disk drives. Some controller cards have additional utilities to work with the disk drives specifically, such as a surface scan function and a drive format utility. In the case of SCSI based cards, these controllers will provide additional options to manage the drives.
Logical Array Configuration
The configuration of the logical array stripes the data across all of the physical drives. This provides balanced data throughput to all of the drives—instead of making one drive do all the work of reading and writing data, now all of them are working together and the data is streaming across all of the physical drives.
Redundant or Fault Tolerant Operations
The redundancy in a common RAID 5 configuration is the result of using a Boolean mathematical function called Exclusive OR (XOR). This is commonly referred to as Parity. The XOR function is a logical binary process—its best to think of Parity as combination of the other drive’s data blocks. Every byte that gets written to one data block is calculated against the other data blocks and resultant Parity is written to the Parity block for that particular stripe. What makes this function so unique is that the math will always work regardless of what data block is missing. However, the limitation to RAID 5 is that only one data block can be missing—the math will not work if there are two blocks missing. In the working environment this means that only one drive can fail. The RAID 5 configuration will not provide proper redundancy if two or more drives fail.
As previously mentioned, the controller card is striping the data as well as performing the XOR function on that data as well—the amount of logical computations the controller is doing every second is staggering. Today’s RAID controllers are intricate pieces of hardware, including specially designed processors and SDRAM memory banks to provide performance and redundancy.
Common RAID Configurations —The pictures below graphically show how RAID Arrays are put together (this is handled by the RAID configuration.) Follow the letters to see how the data stripes jump between drives.
RAID storage systems are designed to deal with failure. While hardware failure is a strong reason why some RAIDs may fail, there can also be other failures that make the data inaccessible. If your client is having problems with their RAID Array, then Ontrack Data Recovery is your solution.
Ontrack Data Recovery's edge in data recovery procedures and techniques proves our leadership with RAID recoveries. Senior engineers at Ontrack Data Recovery agree that recovering RAID Arrays are one of the most technically challenging aspects of data recovery. Advanced or senior engineers handle RAID recoveries. The process we employ to recover RAID Arrays involves putting the array back together by hand. We do not employ the method of attaching the drives to a RAID controller card and hoping that it works. When Ontrack Data Recovery engineers put the logical array back together they have done extensive investigating on how the data is laid out on all the drives and know the order of the drives and the layout of the data blocks and parity blocks.
A RAID recovery evaluation is really the combination of two very important steps. First is the array rebuilding and this has the potential of taking the most time. This investment in time is required in determining the original configuration and getting a quality recovery. The second step is to work on the logical file system. Today’s enterprise journaling file systems are highly complex; if the RAID Array is out of order there will be thousands of errors within the file system and files will be corrupted. Ontrack Data Recovery engineers verify and confirm that the array is built correctly before any data is copied. This extra step ensures a quality recovery.
We have gone through just a small history of this storage solution and it is only reasonable to expect that RAID Arrays will continue to be widely used. Disasters will happen and when they do then you have a partner in Ontrack Data Recovery. We will do all we can to get your customer’s original data back. Our expertise and leadership in RAID recoveries has saved thousands of customers who have had their enterprise storage system go down.