Storage Raid | Raid 0 | Raid 1 | Raid 5 | Raid 1 0 | Raid 0 1 | storage iops calculator

Storage RAID

Hi All,

The objective of this article is to share the knowledge on RAID Technology and how the data will be written or restored when a disk fails. To know about components of a storage system environment, refer the link below

History of RAID:

In the late 1980’s, 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


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.

To know more details about intelligent storage system, refer the link below

Share this

Related Posts

Next Post »