RAID: An Overview
- 1
- 2
- 3
- < previous
- next >
RAID Level 0
As the "zero" in its name indicates, the RAID Level 0 is no redundant storing method. It only speeds up harddrive accesses. For this process, RAID 0 groups together two or more harddrives, forming one logic drive. In subsequent blocks (stripes), it equally distributes the data to all drives. As a result, RAID 0 is also called striping. Parallel reading or writing on several drives increases the data throughout, but it also decreases data security: If one harddrive in the compound fails, all data are lost.
The speed increase becomes especially obvious in large, connected files. Here, striping can simultaneously operate on all harddrives, thereby multiplying the transfer rate. During reading or writing of many small files, the harddrives' access time is the limiting factor. In such cases, the stripeset, at best, reaches the performance of an individual drive. Due to these characteristics, RAID 0 is usually used where large amounts of data have to be processed, for instance, in workstations for CAD/CAM and audio and video editing.
RAID Level 1
RAID Level 1 is also termed mirroring, and the name illustrates how this procedure works: All write accesses simultaneously occur on two harddrives, meaning that each harddrive represents a quasi mirror of its counterpart. It also means that all data are available twice, which ensure an enormous degree of security. Even when one harddrive fails, all usage data are still available. However, RAID 1 offers only half of the harddrive capacity for data storage. The cost of data storage therefore doubles.
During the connecting process of the harddrives to own channels, there may be a performance increase by the factor 2 while reading data. But, at the same time, the writing accesses are only as fast as they are on individual drives - even in the best-case scenario. This means that mirroring is especially well-suited for all systems where the primary task is to store important data for read access.
RAID Level 0+1
Through a combination of mirroring and striping, speed gains and data security can be combined: Through a linear connection of several harddrives - for read and writing processes - RAID 0 obtains a speed advantage. The additional mirroring of the stripset to additional harddrives generates data security. Depending on the manufacturer, this procedure is called either RAID 0+1, RAID 0/1 or RAID 10.
For accessing harddrives, two procedures are thinkable. Let's assume that six harddrives are available for setting up a RAID 10 compound. Firstly, three harddrives respectively (RAID 0) can be striped. In the next step, these logic harddrives (RAID 1) can be mirrored. The reverse scenario apparently leads to the same result: First, two harddrives respectively are mirrored, then the three logic harddrives are connected to one stripset. The bottom line in both cases: The capacity of three harddrives is available.
From the perspective of data security, however, the latter procedure is preferable, and an example from day-to-day operations shows why: If striping took place during the first step, the affected stripeset becomes completely useless in case the harddrive breaks down. The data are still available on the second stripeset. But if one of the harddrives in this second compound also fails, all data are lost.
In the reverse scenario, a mirrored logic harddrive also loses its redundance through a failure. But data are only lost when the second harddrive of this unit breaks down. In comparison to the first scenario, the probability of a total failure is reduced by one third.
RAID Procedures with Error Correction
Mirroring may offer perfect redundancy, but it is also creates a large overhead and high costs. To alleviate this drawback, the RAID levels 2 to 7 operate with error correction. By striping, they first distribute the usage data to at least two harddrives. Based on this data, an error correction value is calculated. In case of a harddrive failure, this correction value assists to reconstruct data. This ECC code is stored on an individual parity drive.
RAID hereby draws from one of the oldest methods of error correction, the parity check. Here, RAID connects the drive's data through a logic exclusive-or-operation (XOR) and stores the result at a separate parity drive. The result of the connection process is 1, when an odd number of bit locations contain a 1. When the number is even, the result is 0
Now, if any given harddrive fails, another XOR can reconstruct the lost data without problems.
ECC Overhead During Writing Operations
The parity-based RAID versions reduce the capacity overhead required for data security. In these versions, the overhead amounts to a maximum of one third of the previous value; if multiple payload data harddrives are used, it decreases even more. On the other hand, updating parity information during the data storage process requires additional writing and reading accesses.
There are two ways of updating ECC information. The simpler version: After a data block arrives, the RAID controller writes this data block on the harddrive. In the next step, it reads all blocks that are affected by this operation, computes the resulting parity and writes this parity on the ECC harddrive. For each writing operation, this method requires an additional access to all harddrives of the compound.
Here's the more complex version: In the first step, the controller only reads the data block that is to be overwritten. Using XOR, the controller then computes the position where a bit has changed. In the following step, it reads the old ECC block and again links it with the previously computed result, again employing XOR. As a result, the controller obtains a new parity block and can now store this block back. In contrast to the first update method, only two harddrives of the array have to be accessed in this process.
RAID Level 2
RAID Level 2 offers additional protection for harddrives, but due to its extensive implementation, it is rarely used. With the exception of a few applications, RAID Level 2 has been limited to the mainframe segment.
RAID 2 is based on the bit-wise division of payload data. In comparison to other RAID levels, RAID 2 not only implements one error correction type to protect against complete harddrive failure. In contrast, all other RAID levels fail, if a complete drive does not fail but is confronted with inconsistent data - for example through a write-error.
Those levels detect the error, but they cannot determine which harddrive is responsible for delivering the corrupted data. Consequently, a correction is not possible.
Because of that, RAID 2 uses 2 bit for the ECC code, in addition to 8 bit for data. As a result, RAID 2 detects errors but also determines their location. RAID 2, therefore, corresponds with the ECC RAM, which does not stop a computer with a parity error when single-bit errors occur. Instead, it corrects the bit.
But the bit-wise distribution to its own harddrives necessitates the use of 10 harddrives in a compound. The possibility for simultaneous access increases the reading speed of RAID 2 by the factor eight. But due the to large ECC overhead, the performance during writing operations plunges below the performance level of an individual harddrive.
RAID Level 3
RAID Level 3 banks on a byte-wise striping of data. In contrast to RAID 2, it uses the integrated functions of harddrives to detect writing and reading errors. As a result, it can operate with an individual, defined parity harddrive.
To simplify the generation of ECC data, RAID 3 synchronizes the harddrives' header positions. This allows for writing access without overhead, because parity and usage data can be stored simultaneously on the harddrives. A scenario with many reading accesses to smaller, distributed files, in contrast, requires the synchrone repositioning of all harddrive headers in the compound. Obviously, that requires a lot of time.
Only when reading large files, RAID 3 can play out the speed advantage it has as a result of the simultaneous access. Consequently, the method is primarily used when processing large, connected amounts of data located on individual desktop computers. Examples include CAD/RAM or multimedia processing.
RAID Level 4
Unlike RAID 3, RAID 4 operates with block-wise striping of usage data. In order to avoid the drawbacks of RAID 3 when processing smaller files, RAID 4 does not synchronize the head movements of all harddrives. For storing parity information, it uses a defined harddrive, as RAID 2 and RAID 3 do.
The combination of block-wise striping and independent harddrive access allows RAID 4 to read even smaller files more quickly. Depending on the data size, every data harddrive can conduct independent reading operations. In writing operations, however, RAID 4 is inferior to RAID 3, the reason being the lack of synchronization: For every ECC update, the appropriate location on the parity harddrive has to be identified first and then accessed. As a result, the ECC drive emerges as a bottleneck in this scenario.
Because of the way it operates, RAID 4 is especially suited for environments where reading operations occur much more frequently than writing operations. But because RAID 4 offers only few advantages compared to RAID 3, it is rarely used.
RAID Level 5
Like RAID 4, RAID Level 5 operates with a block-wise distribution of usage data. However, it does not operate with a defined parity harddrive and distributes the ECC data between the harddrives, along with the usage data. That reduces the probability that two writing operations take place on the same harddrive. This means that, for the most part, writing operations can take place simultaneously. In addition, the mechanic load of the harddrives is divided up equally, as no harddrives assumes a preferential role as a parity drive.
While reading data, RAID 5 also shows good performance, the reason again being the data distribution between all harddrives. That pays off especially during the access to many small data blocks. As a result, RAID 5 is a popular option especially in database or transaction servers.
Like RAID 1, RAID 5 can be combined well with RAID 0. The resulting RAID 0+5, also known as RAID 50, offers a performance similar to RAID 10 but reliability mechanisms that are better than those offered by RAID 5.
Exotic Options: RAID 6 and RAID 7
RAID 6 represents an attempt to increase the reliability even more in comparison to RAID 3 to 5. In these cases, only one harddrive of an array may fail; otherwise, the data can no longer be reconstructed via XOR. RAID 6 gets around this restriction by quasi extending a RAID 5 with an additional parity harddrive. Now, two harddrives of the compound may fail without a data loss occurring. But the increased security has its price: In comparison to RAID 3 to 5, read access is significantly slower.
The prioprietary RAID 7 is also structured in a similar way as RAID 5. However, the manufacturer, Storage Computer, uses a local real-time operating system in the controller. Fast data busses and several large buffer memories detach the harddrives from the bus. Compared to other RAID levels, this asynchrone method is supposed to significantly speed up reading and writing operations. Additionally, the parity information can be stored on several harddrives, as is the case in RAID 6.
- 1
- 2
- 3
- < previous
- next >
Dimension Data, La Trobe University and Windows Server 2008 partner to improve compliance
La Trobe University partnered with Dimension Data to deploy Windows Server 2008 and Network Access Protection technology to improve their existing network security solution.







