Wednesday, February 15, 2012

Data recovery from RAID systems

Nowadays, RAID (Redundant Array of Independent Disks) is widely used by home users for their personal computers as a method to speed-up, extend or add redundancy to the main disk storage. RAID-systems are supported today not only by expensive specialized controllers of corporate servers, but also as part of a disk controller on inexpensive motherboards.
Quite stable cost-efficient solutions like Intel ICHxx-R southbridge chips allow to easily deploy a RAID system on a PC. Unfortunately, even the best RAID systems don't feature ever-lasting performance and can fail any time due to many factors, e.g. software or hardware failures. Choosing a reliable data recovery software with tools specially designed for data recovery from complex RAID-systems you substantially increase the chances to get your data back in full scale. Our products can help you recover data from RAID systems, even if RAID failure caused file system damage.


Non-redundant systems

The term RAID defining (RAID level 0, Stripe) or JBOD (Just a Bunch Of Disks, Span) is quite incorrect . These RAID systems have the following practical uses:

JBOD - extended storage consisting of several disks, even of different size. Each component of JBOD follows the previous one to provide monolithic storage with the size equal to the sum of component sizes. JBOD is supported by most hardware and software RAID chips (e.g. Dynamic Disks under Windows can span among different disks or disk partitions).

RAID0 - stripe set on disks of equal size. The data on RAID0 are divided into 'stripes' of equal size and cyclically distributed among all disks. Such 'stripe' size is usually from 512 bytes and up to 256KB. The purpose of data striping is to distribute a long data fragment among all disks that allows to issue data exchange requests to all drives and at the same time substantially speed-up this operation with parallel read or write. RAID0 systems are the fastest and they use the whole disk space.

Perspectives of data recovery from these systems are obvious: even if one disk drive from RAID0 could not be read data from this component could not be recovered. If such failure occurs on JBOD entire fragment of span could not be recovered anymore. For RAID0 this will affect all data on RAID (e.g. if RAID0 is built on 4 disks with stripe size 16KB, after failure of one disk RAID will have 16KB 'hole' followed by 48KB block. In general, this would mean any file with size over 48KB cannot be recovered).

If one or more disks from RAID0 or JBOD failed stop using the disk immediately and take it to a data recovery laboratory. Only physical drive repair could help recover the data!

In case of a system failure not related to disks (e.g. reset of controller settings, controller failure or damage etc.) it's possible to recover data even in case of file system logical damage. The only thing you need is to virtually assemble the original monolithic storage with data recovery software. For this you need to specify the disks included into RAID, drive order and stripe size for RAID0. Data recovery software will read data from components in the same manner RAID controller does and it will be able to access good files on virtually reconstructed RAID.


Mirrors

Typical 'mirror' implementation is called RAID1. Each component of RAID1 contains the same data, thus information could be recovered from any good RAID component. For RAID1 controller can perform parallel reading to speed-up files read access. This kind of storage has the highest level of redundancy and the best perspectives of data recovery.

Data recovery with an efficient data recovery software doesn't require any other actions except direct reading of one RAID component.

Advanced redundant systems

These systems are a compromise between high speed of storage access, storage size and redundancy. Usually they apply the idea of striping from RAID0 but on-disk data is extended with an extra information (parity information) that adds redundancy and facilitates data recovery or even continues RAID operations even after component failure.

Advanced redundant systems include RAID3, RAID4 or RAID7 (stripe set with dedicated parity), RAID5 (stripe set with distributed parity) and RAID6 (stripe set with double distributed parity). 'Single' parity means that data can be recovered from RAID or RAID system can operate after failure of single component; 'double' parity – after failure of up to two components.

RAID3 and the similar systems use classic RAID0, extended with one more disk to store parity. RAID5 and RAID6 distribute parity among all disks to speed-up parity update process for data write operations.

Data can be recovered from advanced redundant systems if RAID-systems has all disks working, as well as if one (for RAID3, RAID4, RAID5, RAID7) or up to two (for RAID6) components could not be read. If more disks failed stop using the disk(s) immediately and take it to a data recovery laboratory. Only physical drive repair could help recover your data!

If data recovery is possible without drive repair assemble your RAID with a data recovery software by specifying drives (including placeholders for a missing drive), drives' order, stripe size and parity distribution algorithm. The data recovery software will read data from components in the same manner as RAID controller does, thus it'll manage access to good files on virtually reconstructed RAID.

Hybrid systems

Vendors often use RAID-on-RAID configurations to improve performance, add redundancy and increase failure resistance. Generally, such systems are combinations of non-redundant RAID systems, 'mirrors' and advanced redundant systems. RAID10 is the most typical system of the group, it employs several 'mirrors' with 'stripe' over them. Here mirrors ensure redundancy and stripe over mirrors adds read/write speed. Data recovery from this system is not a complicated task: take any good component from each mirror and virtually build RAID0 over it.

More advanced hybrid systems include RAID50 (stripe over RAID5), RAID51 (mirror of RAID5) etc. In order to reconstruct RAID 51 you need to build each RAID5 component, and for RAID50 - build RAID0 over a set of RAID5.

Efficient data recovery software will help you reconstruct a complex RAID-system of any level and will increase chances to recover your data. 

No comments:

Post a Comment