Recently, there has been a high degree of interest in the use of RAID (redundant arrays of inexpensive disks) technology over a wide range of server configurations. A variety of RAID implementations, or levels, is now available, as summarized in Table 11.3.
RAID Level |
Description |
Advantages |
Disadvantages |
RAID-0 |
Block striping, no parity |
Faster reads |
No recovery from disk failure |
RAID-1 |
One-to-one disk mirroring |
Fully protected from single disk failure, no degradation of I/O speed |
Twice as many disks are required |
RAID-0+1 |
One-to-one mirroring with striping |
Faster reads, fully protected from single disk failure |
Twice as many disks are required |
RAID-3 |
Byte-level striping with dedicated parity disk |
Faster reads, fully protected from single disk failure, only one extra disk required per array |
Slower writes, slower recovery from failure |
RAID-4 |
Block-level striping with dedicated parity disk |
Faster reads, only one extra disk required per array |
Slower writes, slower recovery from disk failure |
RAID-5 |
Block-level striping with distributed parity |
Faster reads, fully protected from single disk failure, only one disk required per array, faster recovery from disk failure |
Slower writes |
RAID-6 |
Block-level striping with dual distributed parity |
Faster reads, fully protected from failure of any two disks |
Slower writes, requires two extra disks for each array, slower recovery from disk failure |
RAID-7 |
Performance-enhanced RAID-5 |
Faster reads, fully protected from single disk failure, only one disk required per array, faster recovery from disk failure |
Slower writes |
RAID-8 |
Performance-enhanced RAID-5 |
Faster reads, fully protected from single disk failure, only one disk required per array, faster recovery from disk failure |
Slower writes |
A careful examination of this table suggests that there is no clear choice of RAID technologies, nor is it even clear that RAID should be used. In general, RAID-5 is the most popular RAID level, since it is supported by a wide range of hardware manufacturers and is relatively inexpensive to implement. However, RAID-5 has a performance penalty associated with it. In most RAID-5 implementations, there is a significant performance degradation when performing write operations, due primarily to the need to read, recalculate, and write the distributed parity information. While RAID-5 may be appropriate for fairly static tablespaces used primarily for read operations, avoid the use of RAID-5 disks for files with high write rates. These include the rollback segments, TEMPORARY tablespace, SYSTEM tablespace, redo logs, and tables with high amounts of inserts, updates, and deletes.
With the falling price of disk drives, RAID-0+1 may be the best all-around choice for both performance and protection from failure. Although twice as many disk devices are required as for traditional non-RAID disk implementation, the increases possible in read performance, combined with the ability to recover from a disk failure, makes this level attractive.
Some operating systems, for example, Windows NT, provide RAID capability as an operating system feature. While these RAID implementations may be attractive, they come at a very high resource cost. Since these RAID configurations are implemented in software, rather than by using specialized RAID hardware, they consume a large amount of CPU, memory, and controller capacity.
One word of caution when using RAID: do not create, or allow creation of, multiple logical disks on a single RAID array. While this may be practical for a file server configuration, use of such a configuration in an Oracle database environment will result in overall poor performance.