Four years ago I tried to compare the RAIDability of a few versions of firmware for then-popular Seagate Barracuda ATA IV hard disk drives (for details see our articles called Seagate Barracuda ATA IV in RAID 0: Truth and Fiction and Seagate Barracuda ATA IV HDD Review). Those tests produced discouraging results because the drives, performing in a RAID0 array, would be slower in some tests than a single such HDD. That article proved to be a bit controversial and I decided to carry out such tests in the future for my personal use only, without publishing them.
But there is now a definite trend on the HDD market to produce “professional” versions of desktop HDDs for use in entry-level servers, data storage systems and workstations. Such HDDs are endowed with special technologies that should ensure required performance at a much higher reliability level than with ordinary HDDs. The drive’s operation under vibration is particularly paid much attention to.
So, in this article I’ll return to the topic of RAIDability of today’s HDDs on a new level. Testing HDDs of a particular model from a particular company in a RAID1 array wouldn’t tell me what influences the outcome more, the HDDs or the RAID controller employed. It’s only through comparing different HDDs on the same controller that any practical conclusion can be drawn from the test. Of course, these practical results are going to be bound to the controller the test was performed on.
As Archimedes once said, you cannot move the Earth without having a place to stand. Choosing a specific controller for such a place, I lose one degree of freedom, but instead acquire the opportunity to compare hard disk drives. And that’s exactly what I want.
So, what about the controller? Not long ago the Areca ARC1220 controller was tested on our site and it’s going to suit me fine judging by its excellent results in our tests. Next, the types of arrays and the number of drives in them are to be decided upon. After some deliberation I decided to check out RAID0, RAID5 and RAID10 arrays made out of four HDDs.
Here are the HDD models to be tested on the Areca ARC1220 controller:
- Hitachi Deskstar 7K400 (HDS724040KLAT80)
- Maxtor DiamondMax 11 (6H400F0)
- Seagate NL35 (ST3400832NS)
- WD Caviar SE (WD4000KD)
- WD Caviar SE16 (WD4000KS)
- WD Caviar RE (WD4000YR)
This list includes two “professional” drives from Seagate and Western Digital (ST3400832NS and WD4000YR) and four ordinary “desktop” drives. To build the arrays I used four samples of the same HDD model, from the same batch and with the same firmware version.
I chose 400GB drives due to their best capacity/price ratio. If you don’t see your favorite HDD model among these, I can assure you that you’ll see it in one of our upcoming reviews. We are going to make such reviews on a regular basis.
But you may be wondering if this test is at all necessary? We have recently tested modern large-capacity HDDs on our site and know how things stand among them (for details see our article called 500GB HDD Shootout: Seagate Barracuda 7200.10 and Others!). Is that not enough? It is not because I’ve got somewhat different models today and, furthermore, HDDs behave differently in a RAID array than on their own.
On one hand, the average load on each drive is lower in a RAID array because the request queue is shared by all the drives within the array. But on the other hand, each request to the array may transform into several requests to the drives, depending on the array type and the sophistication of the RAID controller’s firmware. For example, a request to write to a RAID5 array is, in theory, transformed on the controller into two read requests and two write requests, sent to two different HDDs. Or taking a RAID1 array as an example, the controller doubles each read request it receives and sends the two resulting requests to both HDDs in a maniacal desire to make sure that the contents of both are identical.
This affects the timing characteristics of load, I mean the time between two sequential requests to the same HDD. And it requires the drive to change its anticipatory reading and deferred writing algorithms accordingly.
And finally, the disk load is also influenced by the controller’s caching algorithms (especially if the controller is equipped with its own cache memory).
That’s enough, though. Let’s get to business now.