RAID products can be grouped into the categories
described in the following sections.
RAID Level 0
Technically, these products
are not RAID products at all, because they do
not offer parity or error- correction data to
provide redundancy in the event of system
failure. Although data striping is performed, it
is accomplished without fault tolerance. Data is
simply striped block-by-block across all the
drives in the array. There is no way to
reconstruct data if one of the drives fails.
RAID Level 1
These products duplicate data
that is stored on separate disk drives. Also
called mirroring, this approach ensures that
critical files are available in case of
individual disk drive failures. Each disk in the
array has a corresponding mirror disk, and the
pairs run in parallel. Blocks of data are sent
to both disks simultaneously. Although highly
reliable, Level 1 is costly because each drive
requires its own mirror drive, which doubles the
hardware cost of the system.
RAID Level 2
These products distribute the
code used for error detection and correction
across additional disk drives. The controller
includes an error-correction algorithm, which
enables the array to reconstruct lost data if a
single disk fails. As a result, no expensive
mirroring is required. The code, however,
requires that multiple disks be set aside to do
the error-correction function. Data is sent to
the array one disk at a time.
RAID Level 3
These products store user data
in parallel across multiple disks. The entire
array functions as one large, logical drive. Its
parallel operation is ideally suited to
supporting imaging applications that require
high data-transfer rates when reading and
writing large files. RAID Level 3 is configured
with one parity (i.e., error-correction) drive.
The controller determines which disk has failed
by using additional check information recorded
at the end of each sector. However, because the
drives do not operate independently, every time
an image file must be retrieved, all the drives
in the array are used to fulfill that request.
Other users are put into a queue.
RAID Level 4
These products store and
retrieve data using independent writes and reads
to several drives. Error-correction data is
stored on a dedicated parity drive. In RAID
Level 4, data striping is accomplished in
sectors rather than bytes or blocks.
Sector-striping offers parallel operation in
that reads can be performed simultaneously on
independent drives, which allows multiple users
to retrieve image files at the same time.
Although multiple reads are possible, multiple
writes are not because the parity drive must be
read and written to for each write operation.
RAID Level 5
These products interleave user
data and parity data, which are then distributed
across several disks. Because data and parity
codes are striped across all the drives, there
is no need for a dedicated parity drive. This
configuration is suited for applications that
require a high number of input/output operations
per second, such as transaction processing tasks
that involve writing and reading large numbers
of small data blocks at random disk locations.
Multiple writes to each disk group are possible
because write operations do not have to access a
single common parity drive.
RAID Level 6
These products improve
reliability by implementing drive mirroring at
the block level so data is mirrored on two
drives instead of one. Up to two drives in the
five-drive disk array can fail without loss of
data. If a drive in the array fails with RAID
Level 5, for instance, data must be rebuilt from
the parity information spanned across the
drives. With RAID Level 6, however, the data is
simply read from the mirrored copy of the blocks
found on the various striped drives. No
rebuilding is required. Although this results in
a slight performance advantage, it requires at
least 50% more disk capacity to implement.
Vendors continually tout the
effectiveness of various RAID solutions. In
truth, the choice among RAID solutions involves
tradeoffs between cost, performance, and
reliability. Rarely can all of these
requirements be satisfied simultaneously,
especially when trying to address
high-availability, large-scale storage needs.