You are on page 1of 13

CS5226

Hardware Tuning
RAID Storage System
 Redundant Array of Inexpensive Disks
 Combine multiple small, inexpensive disk
drives into a group to yield performance
exceeding that of one large, more
expensive drive
 Appear to the computer as a single virtual
drive
 Support fault-tolerance by redundantly
storing information in various ways

2
RAID 0 - Striping
 No redundancy
 No fault tolerance
 High I/O performance
 Parallel I/O

4
RAID 1 – Mirroring
 Provide good fault tolerance
 Works ok if one disk in a pair is down
 One write = a physical write on each disk
 One read = either read both or read the less busy one
 Could double the read rate

5
RAID 3 - Parallel Array with
Parity
 Fast read/write
 All disk arms are synchronized
 Speed is limited by the slowest disk

6
Parity Check - Classical
 An extra bit added to a byte to detect errors
in storage or transmission
 Even (odd) parity means that the parity bit is
set so that there are an even (odd) number
of one bits in the word, including the parity
bit
 A single parity bit can only detect single bit
errors since if an even number of bits are
wrong then the parity bit will not change
 It is not possible to tell which bit is wrong

7
RAID 5 – Parity Checking
 For error detection, rather than full
redundancy
 Each stripe unit has an extra parity stripe
 Parity stripes are distributed

8
RAID 5 Read/Write
 Read: parallel stripes read from multiple disks
 Good performance
 Write: 2 reads + 2 writes
 Read old data stripe; read parity stripe (2 reads)
 XOR old data stripe with new data stripe.
 XOR result into parity stripe.
 Write new data stripe and new parity stripe (2
writes).

9
RAID 10 – Striped Mirroring
 RAID 10 = Striping + mirroring
 A striped array of RAID 1 arrays
 High performance of RAID 0, and high tolerance of RAID 1
(at the cots of doubling disks)

.. More information about RAID disks at http://www.acnc.com/04_01_05.html


10
Hardware vs. Software RAID
 Software RAID
 Software RAID: run on the server’s CPU
 Directly dependent on server CPU performance and load
 Occupies host system memory and CPU operation,
degrading server performance
 Hardware RAID
 Hardware RAID: run on the RAID controller’s CPU
 Does not occupy any host system memory. Is not operating
system dependent
 Host CPU can execute applications while the array adapter's
processor simultaneously executes array functions: true
hardware multi-tasking

11
Comparing RAID Levels
RAID 0 RAID 1 RAID 5 RAID 10

Read High 2X High High


Write High 1X Medium High
Fault No Yes Yes Yes
tolerance
Disk High Low High Low
utilization
Key Data lost Use double the Lower throughput Very expensive, not
problems when any disk disk space with disk failure scalable
fails
Key High I/O Very high I/O A good overall High reliability with
advantages performance performance balance good performance

12
Which RAID Level to Use?
 Data and Index Files
 RAID 5 is best suited for read intensive apps or if
the RAID controller cache is effective enough.
 RAID 10 is best suited for write intensive apps.
 Log File
 RAID 1 is appropriate
 Fault tolerance with high write throughput. Writes are
synchronous and sequential. No benefits in striping.
 Temporary Files
 RAID 0 is appropriate.
 No fault tolerance. High throughput.

13
What RAID Provides
 Fault tolerance
 It does not prevent disk drive failures
 It enables real-time data recovery
 High I/O performance
 Mass data capacity
 Configuration flexibility
 Lower protected storage costs
 Easy maintenance

14

You might also like