How do you decide what level of RAID you need to implement? This PCQuest Special Report benchmarks different levels of RAID and compares them
Everyone is familiar with different levels of RAID and that
implementing one of them for your storage would either improve reliability or
performance. However, have you actually analyzed how much of each benefit you
actually get? When you implement an arbitrary RAID level without assessing what
it really provides and try to match that to what you need for your organization,
you get a mess. After sometime, you realize you don't have the reliability or
performance that you actually require and then switching RAID levels on a live
environment is fraught with problems.
Therefore, to help you decide, we conducted a series of
tests on different RAID levels and have come out with conclusions for each
levels based on the results we saw first hand. Our setup used the SkyRunner
server that got the 'Best Web Performer' title from last month's server
review. On this server's SCSI disks, we implemented RAID 0, 1 and 5 one at a
time and stressed the server. All the tests were run once each on Windows 2003
and RHEL AS 4. We used the NetBench benchmark for our tests.
File server performance on RAID level 0 with Red Hat AS | File server performance on RAID level 1 with RedHat AS | |
File server performance on RAID level 0 with Windows 2003 | File server performance on RAID level 1 with Windows 2003 |
We redesigned both the tests suites to simulate a real
world scenario. We used 19 PCs that simulated a total of 38 clients to the
server. The test was designed in such a way that loading starts from one client
and progressively each of the other 18 join in and try to overload the server in
increments. Finally, from the results, we find out at what point the performance
of the server starts declining.
Level 0
Striping, no redundancy, maximum performance
If you are looking for maximum performance but don't need
any redundancy, you should go for RAID level 0. In this level, you will get
maximum performance both in file services and Web services. In our tests, we saw
that if you used a server as a file server with either OS, you get a throughput
upto 775 Mbit/s. As a Web server, it handles around 3000 requests per second
with RHEL. Surprisingly, Apache running on Win 2003 gave us a poor result of
just around 1200 requests per second. From these results, we conclude that RAID
0 gives you a better performance without redundancy compared to other levels.
For data protection at this level, you will need to deploy a backup solution. If
a disk fails in a striped set, the information would most likely be corrupt.
Level 1
Mirroring, maximum redundancy, minimal
performance loss
When you require redundancy of data with minimal
performance loss, RAID 1 is your choice. This level implements mirroring, where
data on one disk is cloned onto another disk. Here, if one disk fails the other
takes over transparently and data can still be served uninterrupted. In our file
server test, we saw a throughput of 335 Mbit per second on Windows and in RHEL
we saw 487 Mbit/s. Coming to the Web server test, the score was nearly same as
for RAID 0 in both the OS. Overall, our conclusion is that the RAID 1 has
performance issues only with the disk I/O operations, but calculating other
processing-intensive jobs, we don't see any major performance differences. The
only disadvantage in this RAID level is that you have to spare atleast one
additional disk drive for the redundant copy.
File server performance on RAID Level 5 with Windows 2003 |
File server performance on RAID Level 5 with Red Hat AS 4 |
Level 5
Striping, balance of redundancy and
performance
If you are looking for a balance of performance and
redundancy both, then you should opt for RAID level 5 and for this, you need at
least three SCSI disk drives. It uses striping to provide redundancy without
sacrificing too much performance. If any one of the drives fail then RAID 5
proactively handles smooth failover switching, without hampering the user's
tasks on the file system. In our tests, it gave us a decent throughput of 326
Mbit/s in I/O operations, on Win 2003.
Surprisingly, at the same level with RHEL the throughput
dropped to 240 Mbit/s. In both the tests, we pulled out one of the disk drives
while the test was in progress to catch any difference in performance. We
didn't find any such drop. In the Web server test, the scores were more or
less as in RAID level 1. This means there is no major performance difference
while doing calculation-intensive jobs. A significant amount of disk space gets
wasted because of the redundant copies.
Where's SATA RAID?
When you use SCSI disks, you also need a SCSI RAID controller. This can be a
costly affair. Therefore from the affordability angle, people are looking
towards SATA RAID. This is currently the cheapest RAID option out there, since
all motherboards today come with atleast four SATA connectors and inherently
support at least RAID 0 and 1.
The plus point of SATA drives over SCSI ones is that they
come with lots of storage space. Today, you can buy a 500 GB SATA drive, while
SCSI drives still haven't reached that capacity. As SATA drives have become
more affordable and their capacities have also increased, they're incerasingly
occupying entry-level to mid-range servers. They're even being used inside
storage arrays. they've made it cheaper to build multi-Terabyte storage boxes.
When it comes to performance, SCSI is still king. They're
still used in mid-range to high-end servers because of their performance.