TOC · Work · Menu · Disk

## RAID Arrays

### Dialog box "Construct RAID"

Use Menu - Drive - Select Drive - Construct RAID

A tool to construct a virtual RAID using individual disks (or partitions and images) when it is not possible by the means of the controller (hardware RAID) or the operating system (software RAID), as well as to detect RAID layout automatically when some RAID parameters are unknown.

If it is necessary to detach disks from the RAID controller and attach to a computer as individual disks.

Incorrect selection of a RAID type, data rotation (striping), or disk order causes incorrect data recovery (despite possible correct directory structure recovery).

RAID: Auto Calculate (Scan) option allows calculating unknown parameters and / or disk order for arrays with striping. Some disks may be absent (however the initial number of disks must be specified exactly). Most probable RAID layouts are being calculated statistically. The more precise possible RAID parameters are specified for calculation, the faster and more exact results are being obtained. E.g., RAID-5 software implementation in Windows OS uses backward dynamic rotation and a stripe size of 64K and these known parameters can be specified beforehand.

The most of software RAID implementation use containers so an LBA Offset Step is used to try different container offsets. Modern OS's use 1MiB alignment so 2048 LBAs (1MiB) is the default option. Old OS's may use 63 LBA alignment. For a completely unknown offset a step of 1 LBA can be specified.

### RAID types

RAID-0. Usually contains two disks on which information is written alternately by blocks (stripes). If one disk is absent only small files which fit into single block may be recovered.

RAID-1. Usually contains two disks, data is duplicated. Stripe size is not used. Supported in read-only mode. One healthy disk may be opened as a single device without loss of data.

RAID-4. Usually contains three disks. One disk is for parity. Data is alternated between the rest disks. It is possible to recover all data without any one of the disks. Use NULL device instead of the absent device.

RAID-5. Usually contains three disks (or more). Data is alternated between all disks herewith one block of parity per the rest blocks of data. There are four types of data rotation on a RAID-5. Some RAIDs (usually hardware) may have delayed parity. It is possible to recover all data without any one of the disks (which should be replace with NULL device).

RAID-6. Usually contains four disks (or more). It is similar to RAID-5 with exception that two blocks of parity (different types) are used. Only type of parity is supported so only one disk may be replaced with NULL device. Supported in read-only mode.

RAID: Custom rotation. You may define your own striping (use Menu - Striping...). Use integer numbers from 0 to specify data blocks according to their order on disks, -1 to specify XOR-parity block, and -2 to specify unused block.

E.g. for the diagram: | => | Specify striping as:
Disk#0 | Disk#1 | Disk#2 | Disk#3 |
A1 | A2 | Ap | Aq | 0 1 -1 -2
B1 | Bp | Bq | B2 | 2 -1 -2 3
Cp | Cq | C1 | C2 | -1 -2 4 5
Dq | D1 | D2 | Dp | -2 6 7 -1

JBOD/Spanned. Just a bound of disks which are used as one continuous disk. There is no data alternation, stripe size is not used. Data located on any disk will be lost if the disk is absent. JBOD is supported in read/write mode.

### RAID parameters

Stripe Size: data rotation block size. Not used in RAID-1, JBOD
Delay: rotation delay (special RAID-5 and RAID-6 implementations)
Offset: data start offset on disk (usually used on software RAIDs)
Offset and Size: RAID logical unit offset and size on an individual disk
Null disk: used instead of absent or damaged disk
Striping...: manually specify striping for Custom RAID
Save/Load: save/load RAID configuration
Read ahead: improve performance on RAIDs with a small stripe size (not recommended on disks with bad sectors).