Introduction to RAID
RAID (redundant array of independent disks) is a way of storing the same data in different
places (thus, redundantly) on multiple hard disks. By placing data on multiple
disks, I/O operations can overlap in a balanced way, improving performance.
Since multiple disks increases the mean time between failure (MTBF), storing
data redundantly also increases fault-tolerance.
A RAID appears to the operating system to be a single logical hard disk. RAID employs the
technique of striping, which involves partitioning each drive's storage
space into units ranging from a sector (512 bytes) up to several megabytes. The
stripes of all the disks are interleaved and addressed in order.
In a single-user system where large records, such as medical or other scientific images, are
stored, the stripes are typically set up to be small (perhaps 512 bytes) so that
a single record spans all disks and can be accessed quickly by reading all disks
at the same time.
In a multi-user system, better performance requires establishing a stripe wide enough to hold
the typical or maximum size record. This allows overlapped disk I/O across
drives.
Striping
In computers that use multiple hard disk systems, disk striping is the process of
dividing a body of data into blocks and spreading the data blocks across
several partitions on several hard disks. Each stripe is the size of the
smallest partition.
Types of Striping
There are two types of disk striping: single user and multi-user. Single user disk
striping allows multiple hard disks to simultaneously service multiple I/O
requests from a single workstation. Multi-user disk striping allows multiple
I/O requests from several workstations to be sent to multiple hard disks. This
means that while one hard disk is servicing a request from a workstation,
another hard disk is handling a separate request from a different workstation.
Disk striping with or without Parity
Disk striping is used with or without parity. When disk striping is used with
parity, an additional stripe that contains the parity information is stored on
its own partition and hard disk. If a hard disk fails, a fault tolerance driver
makes the lost partition invisible allowing reading and writing operations to
continue which provides time to create a new stripe set. Once a hard disk
fails, the stripe set is no longer fault tolerant, which means that if one or
more hard disks fail after the first one, the stripe set is lost. Disk striping
without parity provides no fault tolerance. The disk striping process is used
in conjunction with software that lets the user know when a disk has failed.
This software also allows the user to define the size of the stripes, the color
assigned to the stripe set for recognition and diagnosing, and whether parity
was used or not.
RAID Details