Sei sulla pagina 1di 12

About Storage RAID

History of RAID:
In the late 1980s, rapid growth of new
applications and databases created a high
demand for storage capacity. At that time, data
was stored on a single large, expensive disk
drive called Single Large Expensive Drive
(SLED).
In 1987, Patterson, Gibson, and Katz at the
University of California, Berkeley, published a
paper titled A Case for Redundant Arrays of
Inexpensive Disks (RAID). This paper
described the use of small-capacity, inexpensive
disk drives as an alternative to large-capacity
drives common on mainframe computers. The
term RAID has been redefined to refer to
independent disks, to reflect advances in the
storage technology.

Types of RAID:
There are two types of RAID implementation,
hardware and software. Both have their merits
and demerits and are discussed in this section.
Software RAID
Software RAID uses host-based software to
provide RAID functions. It is implemented at the
operating-system level and does not use a
dedicated hardware controller to manage the
RAID array.
Hardware RAID
A specialized hardware controller is implemented
either on the host or on the array. These
implementations vary in the way the storage
array interacts with the host.
RAID Array Components
A RAID array is an enclosure that contains a
number of HDDs and the supporting hardware
and software to implement RAID. HDDs inside a
RAID array are usually contained in smaller sub-
enclosures. These sub-enclosures, or physical
arrays, hold a fixed number of HDDs, and may
also include other supporting hardware, such as
power supplies. A subset of disks within a RAID
array can be grouped to form logical associations
called logical arrays, also known as a RAID set
or a RAID group.
Logical arrays are comprised of logical volumes
(LV). The operating system recognizes the LVs
as if they are physical HDDs managed by the
RAID controller. The number of HDDs in a
logical array depends on the RAID level used.
Components of a Raid Array

Raid Levels
RAID levels are defined on the basis of striping,
mirroring, and parity techniques. These
techniques determine the data availability and
performance characteristics of an array.
RAID 0: RAID 0 is also known as disk striping.
All the data is spread out in chunks across all the
disks in the RAID set. RAID 0 is only good for
better performance, and not for high
availability, since parity is not generated for RAID
0 disks. RAID 0 requires at least two physical
disks.
Raid 0 Striping

Raid 1: RAID 1 is also known as disk


mirroring. All the data is written to at least two
separate physical disks. The disks are essentially
mirror images of each other. If one of the disks
fails, the other can be used to retrieve data. Disk
mirroring is good for very fast read
operations. It's slower when writing to the
disks, since the data needs to be written twice.
RAID 1 requires at least two physical disks.
Raid 1 Mirroring

RAID 5: RAID 5 uses disk striping with


parity. The data is striped across all the disks in
the RAID set; it achieves a good balance
between performance and availability. RAID 5
requires at least three physical disks.

Raid 5 Striping with single parity


RAID 6: RAID 6 increases reliability by utilizing
two parity stripes, which allows for two disk
failures within the RAID set before data is lost.
RAID 6 is seen in SATA environments, and
solutions that require long data retention
periods, such as data archiving or disk-based
backup.

Raid 6 Striping with double parity

RAID 1+0: RAID 1+0, which is also called RAID


10, uses a combination of disk mirroring and
disk striping. The data is normally mirrored first
and then striped. RAID 1+0 requires a minimum
of four physical disks.
Raid 1 0 Stipe + Mirror

RAID 0+1: RAID 0+1 also called as RAID 01, is


a RAID level using a mirror of stripes, achieving
both replication and sharing of data between
disks.

Raid 0 1 Mirror + stripe


RAID Comparison
Here we will discuss about the comparison
between all RAID levels such as read & write
performance and min. disks required to build a
Raid and so on.

Raid comparison chart 1

Raid-comparison-Chart-2
Disk Details in Raid types

Mini/Maxi drives in a Raid level


Capacity utilization in Raid Level

Application IOPS and RAID Configurations


When deciding the number of disks required for
an application, it is important to consider the
impact of RAID based on IOPS generated by the
application. The total disk load should be
computed by considering the type of RAID
configuration and the ratio of read compared to
write from the host.
The following example illustrates the method of
computing the disk load in different types of
RAID.
Consider an application that generates 5,200
IOPS, with 60 percent of them being reads.
The disk load in RAID 5 is calculated as follows:
RAID 5 disk load = 0.6 5,200 + 4 (0.4
5,200) [because the write penalty for RAID 5 is
4]
= 3,120 + 4 2,080
= 3,120 + 8,320
= 11,440 IOPS
The disk load in RAID 1 is calculated as follows:
RAID 1 disk load = 0.6 5,200 + 2 (0.4
5,200) [because every write manifests as two
writes to the disks]
= 3,120 + 2 2,080
= 3,120 + 4,160
= 7,280 IOPS
The computed disk load determines the number
of disks required for the application. If in this
example an HDD with a specification of a
maximum 180 IOPS for the application needs to
be used, the number of disks required to meet
the workload for the RAID configuration would be
as follows:
RAID 5: 11,440 / 180 = 64 disks
RAID 1: 7,280 / 180 = 42 disks (approximated
to the nearest even number)
Hot Spares
A hot spare refers to a spare HDD in a RAID
array that temporarily replaces a failed HDD of a
RAID set. A hot spare takes the identity of the
failed HDD in the array.
Hot spares are of 2 types. Permanent and
Temporary hot spare.
Permanent Hot Spare: The hot spare replaces
the new HDD permanently. This means that it is
no longer a hot spare, and a new hot spare must
be configured on the array.
Temporary Hot Spare: When a new HDD is
added to the system, data from the hot spare is
copied to it. The hot spare returns to its idle
state, ready to replace the next failed drive.