When using RAID data storage, there are many different options you should explore, including where to house RAID drives, whether to use software- or hardware-based RAID controllers, and what RAID level best fits your business
The first issue to consider is where the RAID drives will be housed. Storage area networks (SANs) can house dozens (or more) drives, and provide high-performance RAID, but may be too costly for some SMBs.
There are also other options available to house RAID drives:
NAS: Network-attached storage (NAS) devices can make it easy for you to configure the few versions of RAID that they offer, and mapping the users on your company's network to the NAS RAID array is usually pretty easy to do.
eSATA: Not too far removed from the NAS arrays, an external Serial ATA (eSATA) storage box is an enclosure designed to connect to an eSATA port on your computer. A choice of RAID levels, and other features are usually offered, such as hot swap (enabling you to remove a drive and insert a replacement while the system is still running) or the ability to add a drive while the system runs.
Inside your computers: In theory, adding RAID to your business network may be as easy as attaching the drives to the RAID controller that's built onto your server motherboard.
Software-based vs. hardware-based RAID controllers
One of the most important issues related to RAID and system performance is the type of controller being used. There are many types of controllers, but they all fall into two basic categories: software-based or hardware-based.
Software-based RAID controllers, such as the ones usually integrated onto motherboards, use the CPU and RAM on the motherboard to do the rather intensive calculations needed to manage the RAID drives in use on your system. However, because a software-based RAID controller (or RAID adapter on a motherboard) can cause performance issues on your server, this approach is the least attractive.
Hardware-based controllers use hardware on the actual controller card to perform the calculations and control functions needed to manage the RAID array. Typically, because the actual processing is done on the controller card, the host computer is free to do other things.
NAS and external eSATA RAID boxes also use hardware-based controllers in order to provide the network or eSATA interface with your computer, and also to manage the RAID arrays installed into the enclosures. While there may be performance issues related to the network connecting NAS, and the data flow is only as fast as the network and network components will allow, the bottleneck for sending and receiving data over the network (or eSATA link) will probably not be the controller in the external box.
Other RAID performance tips
The type of drive installed in a RAID array can make a difference in the ultimate performance and longevity of the array. SATA drives are used in most consumer-level and small business arrays. SATA has its advantages: It's relatively inexpensive, an easy interface for the system designers to work with, and provides very large storage capacities. However, SATA drives typically run more slowly than SAS and SCSI drives that are designed for ruggedness and performance. SATA drives aren't designed to last as long as SAS and SCSI. Continuous performance, often required from RAID arrays, isn't a typical design feature for SATA drives.
When a drive fails, your RAID array may be at risk of losing all of its data, depending on the RAID level you use and the health of your other drives. If you are using an external RAID system and it supports both SATA and SAS, you may consider the safety of your data that SAS provides against the lower cost of SATA. (Also, a SAS drive, running at 10K RPM should be able to save and read data more quickly than the SATA drives -- the result may be only a few seconds difference for large files, but in some businesses this little bit of time saved may add up).
Finally, the RAID level you choose will give you a choice between performance and data security. In a nutshell, these are your most common choices:
RAID 0 may be the highest performing level available. With RAID 0, the data is striped from one drive to the next. When reading data, a second (or third, fourth, etc.) drive can be reading the next block of data while data on the current drive is being transferred to the user. This practically eliminates latency when reading data from the drives. Read performance is excellent, but there is no protection for the data. If one drive fails, all the data is lost, and should be considered unrecoverable.
RAID 1 mirrors the drives. All reads and writes on one drive are mirrored onto the other. Read performance is good -- while one sector is being read on one drive, the second drive is reading the next sector. If one drive fails, the data is safe, because it's mirrored onto another drive. Although RAID 1 is expensive and involves duplicate drives, it has high performance.
RAID 5 is probably the most commonly available RAID level. It's available on NAS storage and eSATA devices, and is usually supported by motherboard RAID and by RAID controllers. RAID 5 provides data safety by striping data across drives, and providing parity data that will enable data recovery should a drive fail. Performance of a RAID 5 array won't be as good as performance from RAID 1 or 0, but new levels overcome some of the read performance issues.
RAID 10 is actually a combination of RAID 1 and RAID 0. With RAID 10, data is striped across drives to provide high speed read access to the data on the drives. In order to provide security for the data, the drives used for RAID 0 are mirrored. Because this requires at least four drives (two for the RAID 0 array and another two for the mirror), it's rather expensive, and not all enclosures made for SMBs support more than four drives.
Although there are more RAID levels, the above are the most frequently discussed, and each level has its own performance issues.
RAID performance is just one of the factors to be considered when evaluating RAID for your business. The information provide in this article should help you to decide between the tradeoffs involved in your decision.
About this author: Mark Brownstein is a technology journalist with experience editing computer storage publications. He also runs his own networks, is owner and operator of a test lab, has written books about computing topics, and is an MCSA. He regularly tests and evaluates new products and technologies, and constantly seeks freelance opportunities. When he's not up to his elbows in computer stuff, he lives in Northridge.
This was first published in October 2009