RAID Controller Shoot-Out
mikemuch writes "ExtremeTech has a comparison with benchmarks of three RAID controllers from Adaptec, LSI Logic, and Promise, and along the way gives you a little refresher course on RAID in general and why you want to use it: faster throughput, longer uptime, and improved data security. Motherboard RAID controllers do well when there's 'very little or no load on the CPU, I/O bus, and memory bandwidth. But with heavy traffic and processor loads, the limitations of the shared bus and the benefits of intelligent RAID's integrated IOP and memory cache have a more significant impact.'"
On-board RAID is good enough for most everyone.
"Some days you just can't get rid of a bomb."
Print version here
Annoying "next page" articles...
Actually, if you get two reliable drives (vs. cheap pieces of crap) RAID0 is awesome. Especially if you get high rpm (10,000 or 15,000) drives. While there is no redundancy in RAID0, it greatly increases any loading from hard drives -- this doesn't matter to the average user, but to someone who's loading large files all the time (CAD work, gaming, etc.) it makes the world of difference.
A computer once beat me at chess, but it was no match for me at kick boxing.
In case you didn't realize it, the purpose of RAID0 is to increase performance. People running it are not concerned about data loss on those drives; they are trading off reliability for increased performance. and by the way, It's DUMAS!
RAID-0 is good for scenarios where you need lots of temproary space like video editing, rendering and such. It's only evil when you use it for any reason other than that.
Sure, if you use RAID0 to store your important documents and don't back up, you're either a masochist or your teacher should reconsider the decision to mainstream you. However, if speed is more important than data safety RAID0 has its place.
One example is gamers. The kind of gamers who sometimes have a computer only for gaming. Other than their saved games, the data integrity isn't all that important as a reinstall could take place in an afternoon.
There are also many fields which require fast read/write times, like digital video/audio/etc. As long as everything gets backed up, the RAID0 array is more of a middle step between RAM and reliable non-volatile storage.
Another possibility is installing the Operating System on a RAID0 array, and data on another disk or array better suited for not ruining your life.
Exactly. I would think that given the cheap price of hard drives nowerdays, RAID1 would be so very much more adviseable.
Sometimes all you care about is the maximum performance you can get out of a disk subsystem. You might not care about data loss because you've some other means of taking care of it (backups, replication, network raid etc.), or the data is dispensable. An example is a cluster of high performance database servers, with replication taking care of the data redundancy and a raid 0 disk subsystems because thats the best raw performance you can get.
Anyone know of a hardware raid card with a external SATA port that supports the port multiplier feature? I have only been able to find software raid solutions.
A closed mouth gathers no foot.
There's a stigma associated with host-based controllers that trying to rebuild an array with them is tantamount to masochism. I think it comes from the fact that an intelligent controller can rebuild an array through BIOS-only intervention.
Anyone care to shed some light on how rebuilding arrays compares when using intelligent vs host-based controllers?
*blinking cursor*
Linux, BSD, or Solaris?
How about calling it the Windows RAID controller shoot out?
ExtremeTech should just change it's name to Mainstream tech and get it over with.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
According to the OpenBSD i386 supported hardware website, out of the cards reviewed, only Adaptec and LSI cards are compatible with OpenBSD.
However, Adaptec has refused to provide documentation so that the OpenBSD project may improve the drivers.
"Note: In the past year Adaptec has lied to us repeatedly about forthcoming documentation so that RAID support for these (rather buggy) raid controllers could be stabilized, improved, and managed. As a result, we do not recommend the Adaptec cards for use."
Other *nix variants might support the Adaptec and Promise cards a little more, but the hardware fully supported by OpenBSD is generally well-supported across all *nix variants.
Out of the cards reviewed, only the one from LSI is worth buying. Adaptec may have a little support, but it's not a good idea to purchase any RAID cards from them until they start providing better documentation.
I've used some RAID controllers myself, and I have friends with a lot of experience with them. A key factor in what makes a good RAID controller is not throughput. It's long-term reliability. How long can you hammer your RAID array before you get unrecoverable corruption? A RAID array is supposed to prevent that, but if you have some weird bug in your RAID controller, or it's susceptible to EM interference from surrounding components, you will get data corruption. And I don't mean for reads; I mean that the data gets corrupted on the way from memory to the disk (at least that's our theory), where no RAID controller can protect you.
Of ATA controllers, our experience shows that 3ware controllers are the least unreliable. That is, they generally suck, because they have demonstrated performance problems and other weird failures that 3ware couldn't help us resolve, but they suffer from the least data corruption.
For whatever reason, the on-board controllers are the worst. They seem nice and perform well enough, but they have the highest rate of data corruption.
It may or may not surprise you that software RAID is relatively reliable. With a RAID1, you'd think you're twice as likely to corrupt data on writes, because you have to send the same data twice to two different drives. Sure, having them both bad is unlikely, but at a later time, how do you know which copy of a given sector is correct? But we think that removing an unreliable hardware RAID controller from the data path and just having the relatively simple ATA controller in the way reduces chances of a problem. Just a guess.
If you want truly reliable hardware RAID, you need to spend your life savings on an industrial-strength SCSI RAID controller.
The moral of the story is that there's really no such thing as 100% reliable data storage. If you want speed and don't care about reliability, RAID0 is for you. Other RAID levels add redundancy, which is nice in theory, but add hardware complexity that offsets some of the advantage. For my critical data, I store to CD and DVD ROM. And I make multiple copies of those, because those aren't all that reliable either.
This isn't a shootout, it an advertisement for the cards. They are at different price levels, and ExtreemTech is just showing the difference in performance you get for spending more money. Wow!
If they tested multiple series of the Adapatec, LSI Logic, and some 3ware cards, I would be more impressed, but this just seems like an all out advertisement to me.
Its not what it is, its something else.
"Hey, let's double our chances of data loss by distributing data over TWO drives instead of one.
Dumbass."
Thank you for your comment, Dumbass, but around here you don't need to sign your name to each comment. The system does that for you automatically.
I've got a coraid array that can saturate the host PCI bus running on ATA-over-Ethernet technology, which is faster & simpler than SCSI-over-IP. Performance comparable to my giant expensive fiber channel SAN at a tiny fraction of the cost.
These guys are behind the technology: http://www.coraid.com/
If you don't like Open Source, you won't like it yet. Wait a few years and there will be a version you'll like, the economics of it are compelling. But right now you need to be able to write your own init scripts.
Why buy a $600 RAID controller when I can get the same performance from a $60 gigabit ethernet card?
Ok, I realize it's a bad metaphor because you actually can throw a motherboard quite a distance. But here's another example of where things can go horribly wrong: How do they handle error conditions? On my desktop system, I'm running RAID-0 (with WD Raptor drives) for speed. Yes, I know what I'm doing (famous last words). No, I don't store any important data on my desktop (it's on a RAID-5 array on a server). Originally, I was using the Silicon Image 3114R on-board RAID controller included on my Asus A8N-SLI "Premium" motherboard. Eventually one of the drives died. The SI3114R responded to the problem by freezing and becoming unresponsive when a disk error occurred. Under DOS, Linux, or WinXP - the problem is not OS specific. The rest of the system works fine, but once it hits an error the SI3114R just stops working and returns nothing but errors to the OS. Now, since Asus doesn't update the SI3114R BIOS in their mobo BIOS updates (and I'm too lazy to hack my own), I don't know whether it's bad silicon, bad BIOS, or a bad design (my guess would be the latter). Accessing the drive's S.M.A.R.T. data indicates that the warning numbers were screamingly bad and probably were for some time.
So apparently the SI3114R doesn't monitor S.M.A.R.T. data, and it's error-handling capabilities fall somewhere between "shitty" and "non-existant". No big deal for me; I was only inconvenienced by having to re-install operating systems and applications.
The moral of this long-winded story is that you generally get what you pay for. This isn't the first bad experience I've had with on-board RAID controllers. If your data is important, then spend the appropriate money (think in terms of data replacement cost), do the appropriate research, and invest in a RAID setup that's right for your situation. If your protected data consists of anything more important than your Oblivion saved games, your mobo's RAID controller (or the $39 Fry's special) is probably the wrong choice.
And if anyone cares to know, I'm now using the NVRAID on the mobo (we'll eventually see if it handles failures more gracefully), and I use an Areca ARC-1110 on my server. I can attest that the Areca card does handle failures extremely well, albeit noisily.
Help save the critically endangered Blue Iguana
I second the Areca recommendation. Their cards are very capable of detecting a failed disk, taking it offline, mailing the operator, and sounding the buzzer, all without skipping a beat as far as the host operating system can tell. And their RAID engine is bleeding fast, too. I just wish the kernel folks would try harder to get their driver into the mainline. Areca is the rare example of a manufacturer who undertook the cost to write their own Linux driver and release it under the GPL, and the kernel maintainers have spent more than a year whining and bitching about how the code doesn't fit in their 80-column terminals.
A review of SATA RAID controllers that have open source Linux drivers would be very useful to me.
The ExtremeTech article was a complete waste of time.
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak