Raid Recovery

RAID stands for Redundant Array of Inexpensive Disks. It is a method of combining several hard drives into one unit. This method offers fault tolerance (the ability of a system to continue to perform functions even when one or more hard disk drives have failed) and higher protection against data loss than a single hard drive.

RAID provides real-time data recovery when a hard drive fails, increasing system uptime and network availability while protecting against loss of data. Another advantage of the system is that multiple disks working together increase overall system performance. Any individual or company could benefit from having a RAID system in place.

  • RAID 0, also known as data striping, distributes data across drives which results in higher data throughout. However, since it has no data redundancy, it does not protect against data loss.
  • RAID 1, also known as drive mirroring, works by simultaneously copying data to a second drive so no data is lost if there is drive failure.
  • RAID 2 ,uses Hamming error correction codes and is proposed for use with drives which don’t have built-in error detection.
  • RAID 3, stripes data at a byte level across several drives storing parity (a form of data protection used to recreate the data of a failed drive in a disk array) on a single drive.
  • RAID 4, stripes data at a block level across several drives, with parity being stored on one drive. The parity information allows for recovery from the failure of any single drive.
  • RAID 5, is similar to RAID 4 except for the fact that it distributes parity among the drives. With the use of RAID systems, there is no reason to be intimidated by computer systems.
Level Techniques Description Min. Drives Failure Conditions Pros/Cons Uses
RAID O Disk striping (no fault tolerance) Data is broken into stripes which
are sent to each disk in the array.
2 When one drive fails, the entire array is compromised. Offers Best performance No fault tolerance. Video editing and production
RAID 1 Disk mirroring Data on one drive is mirrored on another. 2 If one drive fails, data is not lost. If both drives fail, the data is lost. 100% redundancy of data/Slower performance and 50% loss of storage space. Accounting, payroll, financial
RAID 2 Byte level striping with Hamming code ECC Data is split at the bit level over a number of data and ECC disks. Up to 14+ Only one drive may fail and still be recoverable “on the fly”. On the fly data error correction/Extremely high cost. No commercial uses
RAID 3 Byte level striping with dedicated parity Data is striped at the byte-level, across multiple disks. 3 When more then one drive fails, the array is compromised. High read/write data transfer rates/Complex controller design Image and video editing
RAID 4 Block level striping with dedicated parity Data is striped in blocks across data disk, with parity store on a separate disk. 3 When more then one drive fails, the array is compromised. High Read/Low Write data transaction rates. General purpose
RAID 5 Block level striping with distributed parity Data and parity are striped in blocks across all disks. 3 When more then one drive fails, the array is compromised. High Read data transaction rates/ Complex controller design Web, database or file servers

Each RAID level uses one or more of the following techniques to write and read data from an array:

Striping is a technique which offers the best performance of any RAID configuration. In a striped array, data is interleaved across all the drives in the array.

An analogy may be helpful in understanding how striping works.

Imagine you asked a friend to write down all the numbers between 0 and 100. It would probably take him a few minutes to jot them all down. Now imagine that instead of asking just one friend to write down the numbers, you asked ten friends to divide the numbers up equally amongst themselves so that one writes down 0 to 9, another 10 to 19, and so on and so forth until all were assigned a task. It would take a fraction of the time. This is how striping works. By splitting up the data and distributing it across multiple drives, you increase performance.

Performance in a striped array is dependant on the stripe width (the number of drives in the array) and the stripe size (the size of the chunks of data being written across the array). Striping can occur at two different levels: byte level and block level. Byte level striping involves breaking up the data into bytes and storing them sequentially across the hard drives. Block level striping involves breaking up the data into a given block size. These blocks are then distributed in the same way across the array as in byte level striping.

So, what stripe size should you use to wring the most performance out of your RAID? Well, that depends on what type of application you’re using it for.

Larger stripes mean fewer accesses to the disk. For this reason, larger stripes are useful for I/O-intensive (Input/Output) applications such as database servers. Smaller stripes on the other hand, mean that data can be accessed more quickly because data chunks are smaller. Consequently, smaller stripes are better suited for throughput-intensive applications such as video production and editing.

Although a striped array may offer the best performance of any RAID configuration, it provides no redundancy. If one drive in the array fails, all of your data will be lost and you may need to consider RAID data recovery options.

That’s where mirroring comes in. With mirroring, whatever you write to one drive, gets written simultaneously to another. Thus, you always have an exact duplicate of your data on the second drive. This is one of the two data redundancy techniques used in RAID to protect you from data loss. The advantage of this technique is that when one hard drive in the array fails, the system can still continue to operate since there are two copies of the data. Downtime is minimal and rebuilding the data from the good copy is relatively easy.

Mirroring also provides a small performance boost over a single non-arrayed drive. Since the mirrored pairs contain the same data, the RAID controller can read data from one drive while simultaneously requesting data from the other. Of course, write speeds will be slower than with other techniques because data must be written twice, once on each drive.

Parity is an error correction technique commonly used in certain RAID levels. It is used to reconstruct data on a drive that has failed in an array.

Here’s how it works: your RAID controller adds a parity bit to all binary information being written to the array. Basically, this is just an extra bit of data tacked onto the actual data.

There are two types of parity bits: even parity bit and odd parity bit. An even parity bit is set to 1 if the number of ones in a given set of bits is odd (making the total number of ones even). An odd parity bit is set to 1 if the number of ones in a given set of bits is even (making the total number of ones odd).

A parity block is used by certain RAID levels. Redundancy is achieved by the use of parity blocks. If a single drive in the array fails, data blocks and a parity block from the working drives can be combined to reconstruct the missing data.

Given the diagram below, where each column is a disk, assume A1 = 00000111, A2 = 00000101, and A3 = 0000000. Ap, generated by XORing A1, A2, and A3, will then equal 00000010. If the second drive fails, A2 will no longer be accessible, but can be reconstructed by XORing A1, A3, and Ap:

A1 XOR A3 XOR Ap = 00000101

A1 A2 A3 Ap
B1 B2 Bp B3
C1 Cp C2 C3
Dp D1 D2 D3

Note: Data blocks are in the format A#, parity blocks Ap.

RAID certainly offers more data protection than non-RAID disk systems. However, the management of the disks and the data distribution across them can be complex. Complex redundant systems can suffer failure, most often not a fault of the technology used or the design of the array, but most likely because of its failure to correctly apply these systems which leads to a single point of failure causing disastrous data loss.

No matter how well designed or implemented the RAID system is, there is still a factor that can cause RAID data array problems, the human factor. The more complex the system, the higher the likelihood for mistakes to occur. Note the following:

  • Multiple drives can fail in an array.
  • Arrays are normally boxed in a single case, so physical damage can affect multiple drives and the control electronics.
  • Many people don’t back up RAID systems because they’re ‘fault tolerant’ – however they’re not ‘fault proof’.

Think of a RAID system as an insurance policy for your data protecting you against drive failure. Drive failure entails employee downtime, lost sales, customer costs, lost opportunities, data restoration and re-entry costs, and intangible costs due in part to work day disruptions not to mention the cost of RAID data recovery.

  • In a RAID system incase more than two hard disks are failed then there are chances that the RAID will not mount and it gives the error message,
  • First we need to inspect the number of hard drives and in this array whether they are in working condition or not working condition.
  • we need to make non working hard disk drives to working condition, Mirror each drive to certified, clean hard disk drives if the hard disk drives are working condition still we need to , Mirror each drive to certified, clean hard disk drives.
  • Un stripe the drives to create RAID volume , Rebuild original boot record and low level file system components , Perform entire rebuild of the file system.
  • Then we will use the relevant software’s to recover the data depending on the logical problem.
  • Snap shot of data will be sent to the user to check and verify, else user will be invited to our office to check the data and there integrity after the user satisfaction we will copy the data on to certified, clean hard disk drives/ Tape Media/CD/DVD e.c.t

Data Recovery is a risky process. There are many variables that need to be accounted for in our evaluation and time estimates. We will do our best to perform the recovery within specific time frames. However, events outside our control can cause delays in recovering your data including buy not limited to availability of parts or hidden defects.

To provide for shared risk we have divided the fees into 2 parts, an attempt fee and a recovery fee. The attempt fee is due and payable at authorization of the recovery by you, the client. The recovery fee is due on completion of the recovery before data is released. We will do our best to assure you that we have a level of recovery that is acceptable.