Online Book Reader

Home Category

Managing RAID on Linux - Derek Vadala [7]

By Root 1350 0
RAID-3 required that all disks operate in lockstep (all disk spindles are synchronized). This added additional design considerations and did not provide any significant advantage over other RAID levels.

RAID has changed a great deal since the Berkeley Papers were written. While some of the original levels are no longer used, the storage industry quickly made additions to the original specification. This book will cover all of the RAID levels available to Linux users, but will not cover obsolete implementations like RAID-2 and RAID-3. Below you will find a concise overview of each RAID level. Chapter 2 covers each of the RAID levels in more detail, including hybrid arrays that are built by combining multiple RAID levels.

RAID-0: Striping

RAID-0 is also known as striping because data is interleaved across all drives in the array. Each block of data is written in round-robin fashion to array disks until the write operation is complete. Data is read in the same fashion. Since data transfer is constantly shifted to a new disk, bottlenecks associated with reading and writing data to a single disk are alleviated and performance dramatically improves. Striping was not part of the original RAID specification and, technically speaking, is not a RAID because it provides no mechanism for data redundancy. Nonetheless, the concept of striping is also found in other RAID levels. For example, RAID-4 and RAID-5 (described below) use a combination of striping and recovery algorithms to achieve improvements in performance while still offering redundancy.

RAID-1: Mirroring

RAID-1 (mirroring) stores an exact replica of all data on a separate disk or disks. This practice provides complete data redundancy in the event of a disk failure. However, because data must be written to disk more than once, there is a write performance hit, which increases as you add disks. On the other hand, read operations can be done in parallel so that read performance improves (compared to that of a single disk), depending on the number of disks in the mirror.

RAID-4: Dedicated Parity

RAID-4 works similarly to striping. However, a dedicated drive is used to store parity information. Every time data is written to an array disk, an algorithm generates recovery information that is written to a specially flagged parity drive. In the event of single disk failure, the algorithm can be reversed and missing data can be automatically generated, based on the remaining data and the parity information.

RAID-5: Distributed Parity

RAID-5 is similar to RAID-4, except that the parity information is spread across all drives in the array. This helps reduce the bottleneck inherent in writing parity information to a single drive during each write operation.

Linear Mode

Linear mode, also called append mode, writes data to a single array disk until it is full. Once the disk is full, data is written to the next disk in the array until all disks are full. This provides an easy way to use disks of different sizes in an array, so that no space is ever wasted. Like striping, linear mode is not technically a RAID, because no redundancy is provided. It was also not present in the original RAID specification. For clarity, I will use the term linear mode, rather than append mode, throughout the rest of the book.

Disk spanning

The term linear mode is unique to the Linux kernel's implementation of RAID. Most hardware RAID vendors use the term disk spanning, or simply spanning, to refer to this type of end-to-end disk arrangement. The terms disk concatenation or concatenated disks are also used.

JBOD (Just a Bunch Of Disks)

JBOD refers to the single-disk operating mode that many hardware RAID controllers support. With JBOD mode, the controller is able to circumvent RAID firmware and treat a single hard disk as a normal disk controller would. This is useful when you have disks that you want to configure without RAID support, but that you want to connect to a RAID controller. If your controller does not support JBOD, then you would need to use a standard disk controller

Return Main Page Previous Page Next Page

®Online Book Reader