RAID comes in eight different flavors, numbered from 0 to 7. The actual types of RAID available with a RAID hardware device or with a network operating system that offers RAID software support will vary. For example, Windows Server 2003 supports RAID 0, 1, and 5. Before we actually take a look at the different types of RAID, I need to define what a volume is. A volume , which in some cases is exactly the same as a partition, is a portion of a hard drive that can function as a separate and discrete drive. In the case of RAID, a volume (which appears to the computer as one drive) is actually spread over two or more drives .
Another piece of information you need before we look at the different types of RAID involves the role parity bits play in RAID arrays. Parity information is extra bits of information included with data that is striped across the drives in a RAID array. These extra bits provide enough information about the data striped across the drives that it can actually be used to reconstruct the data on any one of the drives if one happens to fail. Network operating systems such as Windows NT and Windows 2000 that support RAID sets that use parity bits all have utilities you can use to regenerate any data that is seemingly lost when one of the drives in a RAID array fails (you just put in a new drive and regenerate the entire data library of the RAID set).
Let's take a quick look at the different RAID types. A description of all the RAID flavors, 0 through 7, is provided in Table 18.1.
Table 18.1. RAID Types
Now that you've had a brief introduction to the different RAID flavors, let's take a closer look at the RAID types you are most likely to run into. These are supported in hardware RAID systems and by network operating systems that provide RAID software support.
RAID 0 does not actually provide any fault tolerance, even though RAID is considered a strategy for building fault tolerance into servers. It is actually a trick for providing users with faster access to data on file servers and for taking a couple of small drives and combining them to provide more disk space. Because the data is striped across (that is, spread across ) two or more disks rather than one, read and write functions are faster because both (or all) the drives are working simultaneously . Figure 18.3 shows how a RAID 0 array spreads data over multiple drives. Remember that the array of drives would actually be seen by the computer as just one drive with a drive letter designation such as E: (where E: is the actual drive letter).
Figure 18.3. RAID 0 is used to stripe data across multiple drives.
RAID 0 was used a great deal in the days when hard drives were small and slow (not like the incredibly fast gigabyte monsters you can buy now) and there was a need to speed up access to the files on the server and provide an appropriate amount of working storage space. RAID 0 requires at least two hard drives.
Because RAID 0 provides no fault tolerance, when one hard drive in the RAID 0 array goes belly up, so goes your data. In other words, if one drive in the set fails, you lose all your data.
RAID 1, also known as disk mirroring , allows you to create an exact duplicate of a drive partition on another disk. This means that the system partition on a server (the partition where all the startup and important NOS files live) could be mirrored onto another drive. If the main drive fails, the mirror-image drive can be used to keep the server running.
Disk mirroring is supported by a number of network operating systems, including Microsoft Windows Server 2003 (this would be software RAID supported by the NOS). Windows Server 2003 actually supplies a wizard called the Create Volume Wizard that makes creating a mirror set very easy. Figure 18.4 shows this wizard, which walks you through the process of creating a mirror set.
Figure 18.4. Network operating systems that support RAID typically provide an easy-to-use utility for creating RAID arrays such as mirror sets.
To create a RAID 1 array, you just need to have an extra drive that has at least the same amount of free space as the drive partition you want to mirror. The really cool thing about mirror sets is that if one of the drives in the set fails, you can replace the bad drive and then use the network operating system's disk-management software (or the software that allows you to use a proprietary hardware RAID implementation) to regenerate the mirror set onto a new drive.
Using disk striping with parity (RAID 5) is considered a good way to build a fault-tolerance safety net for your drive arrays. You need at least three hard drives to configure RAID 5 on a server. A large number of drives can be made part of a RAID 5 array; the actual maximum number will depend on the hardware or software RAID scheme you use. For example, Windows 2000 Server and Windows Server 2003 (both of which use software RAID) can support up to 32 disks in a RAID 5 array.
RAID 5 works very well on file servers where you have users accessing data all day. The disks in the stripe set actually speed user access time to the data because you don't have a single drive churning away as people open and save files.
When a drive in a RAID 5 set fails, the data on the failed drive is actually regenerated using the data and the parity information that has been stored on the other drives in the stripe set. In cases where a server has hot-swappable drives that are easy to remove and replace, you can regenerate a RAID 5 set with a minimum of server downtime.
RAID 5 arrays require that the same amount of storage space be available in the partitions on the separate drives that will be part of the RAID 5 array. Most network operating systems will not allow you to include the partition that contains the operating system's boot and system files.
When you create a RAID 5 array, all the partitions (on all the drives in the set) are assigned one drive letter and seen by the server (and users accessing the server) as one drive. Figure 18.5 shows a RAID 5 array in the Windows Server 2003 Disk Management utility. Notice that all the partitions in the RAID 5 stripe have been assigned the single drive letter E.
Figure 18.5. RAID 5 allows you to stripe data across three or more disks, providing fault tolerance and faster data access.