0% found this document useful (0 votes)
8 views19 pages

Lecture 4

RAID (Redundant Array of Independent Disks) technologies combine multiple physical disks into a logical disk to provide benefits like increased storage capacity and performance, redundancy for fault tolerance, and more efficient disk access. Common RAID levels use different combinations of data striping, mirroring, and parity techniques. RAID 0 provides the best storage performance through striping data across disks without error checking, while RAID 1 uses disk mirroring to improve data reliability and read performance by storing copies of data on redundant disks.

Uploaded by

Khaled Ahmed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views19 pages

Lecture 4

RAID (Redundant Array of Independent Disks) technologies combine multiple physical disks into a logical disk to provide benefits like increased storage capacity and performance, redundancy for fault tolerance, and more efficient disk access. Common RAID levels use different combinations of data striping, mirroring, and parity techniques. RAID 0 provides the best storage performance through striping data across disks without error checking, while RAID 1 uses disk mirroring to improve data reliability and read performance by storing copies of data on redundant disks.

Uploaded by

Khaled Ahmed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

RAID Technologies

•Lecture 5
• Traditional RAID
• RAID 2.0+
• Other RAID Technologies
• Challenges in traditional computer systems must be addressed. Individual disks
provide insufficient capacities, do not offer redundancy protection, feature
limited performance, and require complex management. Failures of individual
disks may cause data loss.

Instructions processed
per second

CPU > 1 million Disks have become the bottleneck for system performance.

Operations on disks are limited, making it impossible to


RAM > 100,000 provide large capacities.

Data is stored on individual disks, making it impossible to


< 300 provide consistently high data reliability.
Disk
What Is RAID?
• Redundant Array of Independent Disks (RAID) combines multiple physical disks into one logical disk in
different ways, for the purposes of read/write performance and data security improvement.
• Implementations: hardware RAID and software RAID.

How large is a
logical disk?

Logical disk

Physical Physical Physical Physical


disk disk disk disk
• Functionality of RAID:
▫ Combines multiple physical disks into one logical disk array to provide larger storage capacity.
▫ Divides data into blocks and concurrently writes/reads data to/from multiple disks to improve disk access efficiency.
▫ Provides mirroring or parity for fault tolerance.
• Hardware RAID and software RAID can be implemented in storage devices.
▫ Hardware RAID uses a dedicated RAID adapter, disk controller, or storage processor.
▫ The RAID controller has a built-in processor, I/O processor, and memory to improve resource utilization and data
transmission speed.
▫ The RAID controller manages routes and buffers, and controls data flows between the host and the RAID array.
▫ Hardware RAID is usually used in servers.
▫ Software RAID has no built-in processor or I/O processor but depend on a host processor. Therefore, a low-speed CPU
cannot meet the requirements for RAID implementation.
▫ Software RAID is typically used in enterprise-class storage devices.
Data Organization Forms
• Disk striping: Space in each disk is divided into multiple strips of a specific size. Data is also divided
into blocks based on strip size when data is being written.
• Strip: A strip consists of one or more consecutive sectors in a disk, and multiple strips form a stripe.
• Stripe: A stripe consists of strips of the same location or ID on multiple disks in the same array.

• Stripe width
Indicates the number of disks used in an array for striping. For example,
if a disk array consists of three member disks, the stripe width is 3.
• Stripe depth
Indicates the capacity of a strip. Disk 1 Disk 2 Disk 3
D6 D7 D8 Stripe 2 Depth of a stripe

D3 D4 D5 Stripe 1

D0 D1 D2 Stripe 0
Data strips in a Data strips in a Data strips in a
disk disk disk
Data Protection Techniques
• Mirroring: Data copies are stored on another redundant disk.
• Exclusive or (XOR)
• XOR is widely used in digital electronics and computer science.
• XOR is a logical operation that outputs true only when inputs differ (one is true, the other is false).
• 0 ⊕ 0 = 0, 0 ⊕ 1 = 1, 1 ⊕ 0 = 1, 1 ⊕ 1 = 0

Physical disk 1 Physical disk 2 Parity disk

1 1 0
0 1 1
0 0 0

XOR for redundant backup


• RAID generally provides two methods for data protection.
▫ One is storing data copies on another redundant disk to improve data reliability and read performance.
▫ The other is parity. Parity data is additional information calculated using user data. For a RAID array
that uses parity, an additional parity disk is required. The XOR (symbol: ⊕) algorithm is used for parity.
Common RAID Levels and Classification Criteria
• RAID levels use different combinations of data organization forms and data
protection techniques.
• A number of RAID levels have been developed, but just a few of them are still
in use. Consists of block-level striping with double
RAID 6 distributed parity.
Consists of striping, but
no mirroring or parity. RAID 0

RAID 0 is implemented after RAID 1 is


RAID 10
Consists of data mirroring, without Common RAID levels implemented.
parity or striping. RAID 1

RAID 0 is implemented after RAID 5 is


RAID 50
implemented.
Consists of byte-level striping
RAID 3
with dedicated parity.

Consists of block-level striping with RAID 5


distributed parity.
How Does RAID 0 Work
Write data to D 2, D Read data from D 2, D
3... 3...
Write data to D 1. Read data from D 1.

D0 Write data to D 0. Read data from D 0.

D5 D 0, D 1, D 2, D 3, D 4, D 5
D4

D3
Physical disk 1 Physical disk 2
D2 D6
D4 D5 Stripe 2
D1
D2 D3 Stripe 1
D0
D0 D1 Stripe 0

Logical disk Data strips in a disk Data strips in a disk


Striping without error check

Just a Bundle Of Disks (JBOD)


• RAID 0, also referred to as striping, provides the best storage performance among all RAID levels. RAID 0 uses the striping
technology to distribute data to all disks in a RAID array.
• A RAID 0 array contains at least two member disks. A RAID 0 array divides data into blocks of different sizes ranging from
512 bytes to megabytes (usually multiples of 512 bytes) and concurrently writes the data blocks to different disks. This
slide shows a RAID 0 array consisting of two disks (drives). The first two data blocks are written to stripe 0: the first data
block is written to strip 0 in disk 1, and the second data block is written to strip 0 in disk 2. Then, the next data block is
written to the next strip (strip 1) in disk 1, and so forth. In this mode, I/O loads are balanced among all disks in the RAID
array. As the data transfer speed on the bus is much higher than the data read and write speed on disks, data reads and
writes on disks can be considered as being processed concurrently.
• A RAID 0 array provides a large-capacity disk with high I/O processing performance. Before the introduction of RAID 0,
there was a technology similar to RAID 0, called Just a Bundle Of Disks (JBOD). JBOD refers to a large virtual disk consisting
of multiple disks. Unlike RAID 0, JBOD does not concurrently write data blocks to different disks. JBOD uses another disk
only when the storage capacity in the first disk is used up. Therefore, JBOD provides a total available capacity which is the
sum of capacities in all disks but provides the performance of individual disks.
• In contrast, RAID 0 searches the target data block and reads data in all disks upon receiving a data read request. The
preceding figure shows a data read process. A RAID 0 array provides a read/write performance that is directly
proportional to disk quantity.
How Does RAID 1 Work
Write data to and read data from D 2.
Write data to and read data from D 1.
Write data to and read data from D 0.

D2 D 0, D 1, and D 2 pass through a mirror.

D1

Physical disk 1 Physical disk 2


D0
D2 D2

D1 D1
Logical disk D0 D0

Disk array with mirroring


• RAID 1, also referred to as mirroring, maximizes data security. A RAID 1 array uses two identical disks including one
mirror disk. When data is written to a disk, a copy of the same data is stored in the mirror disk. When the source
(physical) disk fails, the mirror disk takes over services from the source disk to maintain service continuity. The
mirror disk is used as a backup to provide high data reliability.
• The amount of data stored in a RAID 1 array is only equal to the capacity of a single disk, and data copies are
retained in another disk. That is, each gigabyte data needs 2 gigabyte disk space. Therefore, a RAID 1 array consisting
of two disks has a space utilization of 50%.
• Unlike RAID 0 which utilizes striping to concurrently write different data to different disks, RAID 1 writes same data
to each disk so that data in all member disks is consistent. As shown in the preceding figure, data blocks D 0, D 1,
and D 2 are to be written to disks. D 0 and the copy of D 0 are written to the two disks (disk 1 and disk 2) at the
same time. Other data blocks are also written to the RAID 1 array in the same way by mirroring. Generally, a RAID 1
array provides write performance of a single disk.
• A RAID 1 array reads data from the data disk and the mirror disk at the same time to improve read performance. If
one disk fails, data can be read from the other disk.
• A RAID 1 array provides read performance which is the sum of the read performance of the two disks. When a RAID
array degrades, its performance decreases by half.
How Does RAID 3 Work
Write data to C.
Write data to B.
Read data.
Write data to A.

C
A 0, A 1, A 2, B 0, B 1, B 2, C 0, C 1, C 2

Physical disk 1 Physical disk 2 Physical disk 3 Parity disk

A C0 C1 C2 P3

B0 B1 B2 P2

A0 A1 A2 P1
Logical disk

Note: A write penalty occurs when just a small amount of new data needs to be written to one or two disks.
• RAID 3 is similar to RAID 0 but uses dedicated parity stripes. In a RAID 3 array, a dedicated disk (parity disk) is used to
store the parity data of strips in other disks in the same stripe. If incorrect data is detected or a disk fails, data in the
faulty disk can be recovered using the parity data. RAID 3 applies to data-intensive or single-user environments
where data blocks need to be continuously accessed for a long time. RAID 3 writes data to all member data disks.
However, when new data is written to any disk, RAID 3 recalculates and rewrites parity data. Therefore, when a large
amount of data from an application is written, the parity disk in a RAID 3 array needs to process heavy workloads.
Parity operations have certain impact on the read and write performance of a RAID 3 array. In addition, the parity
disk is subject to the highest failure rate in a RAID 3 array due to heavy workloads. This is why the parity disk is called
the bottleneck of RAID 3. A write penalty occurs when just a small amount of data is written to multiple disks, which
does not improve disk performance as compared with data writes to a single disk.
• RAID 3 uses a single disk for fault tolerance and performs parallel data transmission. In other words, RAID 3 uses
striping to divide data into blocks and writes XOR parity data to the last disk (parity disk).
• The write performance of RAID 3 depends on the amount of changed data, the number of disks, and the time
required to calculate and store parity data. If a RAID 3 array consists of N member disks of the same rotational speed
and write penalty is not considered, its sequential I/O write performance is theoretically slightly inferior to N – 1
times that of a single disk when full-stripe write is performed. (Additional time is required to calculate redundancy
check.)
How Does RAID 5 Work

Write data.
Read data.
D5
D 0, D 1, D 2, D 3, D 4, D 5
D4

D3

D2
Physical disk 1 Physical disk 2 Physical disk 3
D1
P2 D4 D5
D0
D2 P1 D3

D0 D1 P0
Logical disk

Independent disk structure with distributed parity check codes


• RAID 5 is improved based on RAID 3 and consists of striping and parity. In a RAID 5 array, data is written to disks by
striping. In a RAID 5 array, the parity data of different strips is distributed among member disks instead of a parity disk.
• Similar to RAID 3, a write penalty occurs when just a small amount of data is written.
• The write performance of a RAID 5 array depends on the amount of data to be written and the number of member
disks. If a RAID 5 array consists of N member disks of the same rotational speed and write penalty is not considered, its
sequential I/O write performance is theoretically slightly inferior to N – 1 times that of a single disk when full-stripe
write is performed. (Additional time is required to calculate redundancy check.)
• In a RAID 3 or RAID 5 array, if a disk fails, the array changes from the online (normal) state to the degraded state until
the faulty disk is reconstructed. If a second disk also fails, the data in the array will be lost.
How Does RAID 10 Work?
• RAID 10 consists of nested RAID 1 + RAID 0 levels and allows disks to be mirrored (RAID 1) and then
striped (RAID 0). RAID 10 is also a widely used RAID level.

User data D 0, D 1, D 2, D 3, D 4, D 5

Disk mirror Disk mirror

D4 D4 D5 D5
D2 D2 D3 D3
D0 D0 D1 D1

Physical disk 1 Physical disk 2 Physical disk 3 Physical disk 4


RAID 1 RAID 1
RAID 0
• For most enterprises, RAID 0 is not really a practical choice, while RAID 1 is limited by disk capacity utilization. RAID 10
provides the optimal solution by combining RAID 1 and RAID 0. In particular, RAID 10 provides superior performance by
eliminating write penalty in random writes.
• A RAID 10 array consists of an even number of disks. User data is written to half of the disks and mirror copies of user data
are retained in the other half of disks. Mirroring is performed based on stripes.
• As shown in the figure, physical disks 1 and 2 form a RAID 1 array, and physical disks 3 and 4 form another RAID 1 array. The
two RAID 1 sub-arrays form a RAID 0 array.
• When data is written to the RAID 10 array, data blocks are concurrently written to sub-arrays by mirroring. As shown in the
figure, D 0 is written to physical disk 1, and its copy is written to physical disk 2.
• If disks (such as disk 2 and disk 4) in both the two RAID 1 sub-arrays fail, accesses to data in the RAID 10 array will remain
normal. This is because integral copies of the data in faulty disks 2 and 4 are retained on other two disks (such as disk 3 and
disk 1). However, if disks (such as disk 1 and 2) in the same RAID 1 sub-array fail at the same time, data will be inaccessible.
• Theoretically, RAID 10 tolerates failures of half of the physical disks. However, in the worst case, failures of two disks in the
same sub-array may also cause data loss. Generally, RAID 10 protects data against the failure of a single disk.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy