Appendix D - Redundant Arrays of Inexpensive Drives (RAID)

Redundant Arrays of Inexpensive Drives (RAID) currently has six implementations to provide a set of physical devices that will offer better data device integrity and performance. Those levels are described in this appendix.

Level 0

RAID Level 0 is basic data striping across multiple physical devices. The striping refers to the fact that multiple drives are allocated for data as a group. The data is then placed across the drives evenly so that each drive has a portion of the data. Striping provides better performance than single drives because multiple I/O threads from the operating system are allocated to servicing each drive. In addition, multiple physical reads and writes can occur simultaneously on the separate physical devices.

RAID Level 0 does not provide any fault tolerance and is purely a performance enhancement.

Level 1

RAID Level 1 is device mirroring. As discussed in Chapter 4, "Creating Devices, Databases, and Transaction Logs" mirroring provides an absolute duplication of the data on any given physical device, on the mirror device. Mirroring can (depending on physical implementation) improve read performance if both drives are read in parallel and data is returned to the operating system in a single stream composed of the parallel reads. Mirroring generally imposes a slight performance cost when writing because two writes are done instead of one.

Mirroring is a fault tolerant and media failure is generally handled by an automatic and complete switch over to the mirror device.

Level 2

RAID Level 2 is an error-correcting algorithm that employs striping across multiple physical devices. It is more advanced than Level 0 because it uses error-correcting, "parity" data that is striped across the devices, and copes with media failure on any particular device in the stripe set. However, the parity data consumes several disks and is quite inefficient as a storage mechanism.

RAID Level 2 is generally not used because it does not offer significant performance benefits over a straight mirroring implementation (Level 1).

Level 3

RAID Level 3 is a different implementation of the striped, parity algorithm. It differs from Level 2 by utilizing only a single device in the stripe set for storing the parity data.

RAID Level 3 offers some performance benefits to reads and writes.

Level 4

RAID Level 4 is the same as Level 3, except that it implements a larger block or segment storage size. This means that the basic unit that is being striped is large in size and generally gets better performance due to the more advanced modern physical devices that are able to read and write bigger blocks of data in a single I/O operation. RAID Level 4 stores the parity information on a separate device from the user data that is striped across multiple physical devices.

RAID Level 4 is an inefficient algorithm and is generally not used.

Level 5

RAID Level 5 is the most commonly implemented RAID level currently. It is a striped implementation that stores parity information on the same striped drives. This allows an individual device to fail and the other devices in the stripe set contain enough information to recover and keep processing. The parity information for any particular device is always stored on another device in the stripe set ensuring that if media failure occurs on a particular device that its parity data is not affected.

RAID Level 5 uses the same large block algorithm as Level 4, and is quite efficient. Level 5 will offer performance gains to reads and writes, until media failure occurs. When media failure occurs, reads suffer because the information on the failed device must be constructed from the parity data stored on the other devices.


QUE Home Page

For technical support For our books And software contact support@mcp.com

Copyright © 1996, Que Corporation

Table of Contents

Appendix C - Using SQL Trace

Appendix E - Case Study: New York Metropolitan Museum of Art