Sunday, 20 December 2020

RAID Structure & Levels

 

RAID Structure & Levels

o   RAID is an acronym for Redundant Array of Independent (or Inexpensive) Disks.

o   RAID is the way of combining several independent and relatively small disks into a single storage of a large size.

o   The disks included into the array are called array members.

o   The disks can be combined into the array in different ways which are known as RAID levels.

o   Each of RAID levels has its own characteristics of:

  • Fault-tolerance which is the ability to survive of one or several disk failures.
  • Performance which shows the change in the read and write speed of the entire array as compared to a single disk.
  • The capacity of the array which is determined by the amount of user data that can be written to the array. The array capacity depends on the RAID level and does not always match the sum of the sizes of the RAID member disks.
RAID levels

v How RAID is organized?

Two independent aspects are clearly distinguished in the RAID organization.

  1. The organization of data in the array (RAID storage techniques: striping, mirroring, parity, combination of them).
  2. Implementation of each particular RAID installation - hardware or software.

v RAID storage techniques

The main methods of storing data in the array are:

  • Striping - splitting the flow of data into blocks of a certain size (called "block size") then writing of these blocks across the RAID one by one. This way of data storage affects on the performance.
  • Mirroring is a storage technique in which the identical copies of data are stored on the RAID members simultaneously. This type of data placement affects the fault tolerance as well as the performance.
  • Parity is a storage technique which is utilized striping and checksum methods. In parity technique, a certain parity function is calculated for the data blocks. If a drive fails, the missing blocks are recalculated from the checksum, providing the RAID fault tolerance.

All the existing RAID types are based on striping, mirroring, parity, or combination of these storage techniques.

 

 

v Standard RAID levels

 

1.    RAID 0

o   RAID 0 consists of striping, but no mirroring or parity.

o   Compared to a spanned volume, the capacity of a RAID 0 volume is the same; it is the sum of the capacities of the disks in the set.

o   But because striping distributes the contents of each file among all disks in the set, the failure of any disk causes all files, the entire RAID 0 volume, to be lost.

o   The benefit of RAID 0 is that the throughput of read and writes operations to any file are multiplied by the number of disks.

 

2.    RAID 1

o   RAID 1 consists of data mirroring, without parity or striping.

o   Data is written identically to two drives, thereby producing a "mirrored set" of drives. Thus, any read request can be serviced by any drive in the set.

o   If a request is broadcast to every drive in the set, it can be serviced by the drive that accesses the data first (depending on its seek time and rotational latency), improving performance.

o   Actual read throughput of most RAID 1 implementations is slower than the fastest drive.

o   Write throughput is always slower because every drive must be updated, and the slowest drive limits the write performance.

 

3.    RAID 2

o   RAID 2 consists of bit-level striping with dedicated Hamming-code parity.

o   All disk spindle rotation is synchronized and data is striped such that each sequential bit is on a different drive.

o   Hamming-code parity is calculated across corresponding bits and stored on at least one parity drive.

 

1.    RAID 3

o   RAID 3 consists of byte-level striping with dedicated parity.

o   All disk spindle rotation is synchronized and data is striped such that each sequential byte is on a different drive.

o   Parity is calculated across corresponding bytes and stored on a dedicated parity drive.

o   RAID 3 is not commonly used in practice.

 

2.    RAID 4

o   RAID 4 consists of block-level striping with dedicated parity.

o   The main advantage of RAID 4 over RAID 2 and 3 is I/O parallelism: in RAID 2 and 3, a single read I/O operation requires reading the whole group of data drives, while in RAID 4 one I/O read operation does not have to spread across all data drives.

o   As a result, more I/O operations can be executed in parallel, improving the performance of small transfers.

 

3.    RAID 5

o   RAID 5 consists of block-level striping with distributed parity.

o   Unlike RAID 4, parity information is distributed among the drives, requiring all drives but one to be present to operate.

o   Upon failure of a single drive, subsequent reads can be calculated from the distributed parity such that no data is lost.

o   RAID 5 requires at least three disks. 

 

4.     RAID 6

o   RAID 6 consists of block-level striping with double distributed parity.

o   Double parity provides fault tolerance up to two failed drives.

o   This makes larger RAID groups more practical, especially for high-availability systems, as large-capacity drives take longer to restore.

o   RAID 6 requires a minimum of four disks.

o   As with RAID 5, a single drive failure results in reduced performance of the entire array until the failed drive has been replaced.

o   With a RAID 6 array, using drives from multiple sources and manufacturers, it is possible to mitigate most of the problems associated with RAID 5.

 

5.    RAID 0+1: creates two stripes and mirrors them. If a single drive failure occurs then one of the stripes has failed, at this point it is running effectively as RAID 0 with no redundancy.

1.    RAID 1+0:  creates a striped set from a series of mirrored drives. The array can sustain multiple drive losses so long as no mirror loses all its drives.

 

v RAID Implementations

RAID can be created by two different ways:

  • with the use of operating system drivers, so called software RAID;
  • with the use of special hardware, so called hardware RAID.

 

v Software RAID

Software RAID is one of the cheapest RAID solutions.

There are certain limitations on the use of the software RAID to boot the system. Only RAID 1 can contain boot partition, while system boot is impossible with a software RAID 5 and RAID 0.

 

v Hardware RAID

Hardware RAID is created using separate hardware. Basically there are two options:

  • inexpensive RAID chip possibly built into the motherboard,
  • more expensive option with a complex standalone RAID controller. Such controllers can be equipped with their own CPU, battery-backed up cache memory, and they typically support hot-swapping.

 

A hardware RAID has some advantages over a software RAID, such as:

  • doesn't use CPU of the host computer;
  • allows user to create boot partitions;
  • handles errors better, since communicates with the devices directly;
  • supports hot-swapping.

  


No comments:

Post a Comment