RAID is stand for Redundant Array of Independent Disks; originally stands for Redundant Array of Inexpensive Disks.  RAID is basically involves multiple hard disks (Combining two or more disk drive together), storing the same data in different disks (for Redundancy purpose). RAID distributes the data across multiple disks, I/O operations to overlap in a balance way and improve the performance. Another advantage of RAID is combination of two or more disks together also offers the larger data volume sizes and improved reliability.

 

Two type of RAID Implementations:

 

Hardware RAID: (Usually a specialized disk controller card)

  • Implement at Host level or Arrays.
  • Controls all drives attached to it.
  • Arrays appear to host Operating system (OS) as a regular disk drive.
  • Provided with administrative software.
  • Support multiple RAID levels.

 

Software RAID

  • Implement at OS level and use host base software to provide the function.
  • Runs as part of the Operating System (OS).
  • Does not use dedicate hardware to control the RAID.
  • Performance is dependent on CPU workload.
  • Does not support all RAID levels.

 

RAID Levels:

 

RAID 0 – Striped array with no fault tolerance.

RAID 1 – Disk Mirroring.

Nested RAID – (example: 0+1, 1+0, etc).

RAID 10 (or 1+0) is a mirrored data set (RAID 1) which is then striped (RAID 0), hence the "1+0" name.

RAID 3 – Parallel access array with dedicated parity disk.

RAID 4 – Striped array with independent disks and a dedicated parity disk.

RAID 5 – Striped array with independent disks and distributed parity.

RAID 6 – Striped array with independent disks and dual distributed parity.

 

RAID Comparison


RAID

Min disks

Storage efficiency (%)

Cost

Write Performance

Read Performance

0

2

100

Low

Very Good

Very Good for both sequential and random read.

1

2

50

High

Good. Slower than a single disk, as every write must be committed to two disks.

Good. Better than a single disk

3

3

(x-1) * 100 / where x = number of disk

Moderate

Good for large, sequential writes.

Poor to fair for small random writes.

Good for random reads and very good for sequential reads.

5

3

(x-1) * 100 / x where x = number of disk

Moderate

Fair to good for sequential writes.

Fair for random write slower due to parity overhead.

Very good for random reads. Good for sequential reads.

6

4

(x-2) * 100 / x where x = number of disks

Moderate but more than RAID 5

Good for small, random writes (Has write penalty)

Very good for random reads. Good for sequential reads.

1+0 or 0+1

4

50

High

Good

Very good.