gabriel rosenkoetter on Sat, 1 Jun 2002 04:59:30 -0400 |
On Sat, Jun 01, 2002 at 05:25:36PM +1000, Bradley Molnar wrote: > My understanding was that Raid 0 (striping) increases read/write b/c it > alternates between 2 disks, it can write data faster than any one disk can > write, and the same goes for reading. Only if the bus can handle the full throughput of however many drives you've got, though. If you've got, say, four disks and two controllers, and each disk is capable of saturating the controller, read and write speed will be exactly the same as if you had one large disk. Even beyond that, you're going to be limited by your PCI bus. (Is that a 32 bit or 64 bit PCI slot? If the latter, is it running at 33 MHz or 66 MHz?) Also, note that the size of your write is relevant. If it's not larger than a block, you're not buying any speed. > Raid 1 (mirroring) as you said, can increase read speed, but, it doesn't > speed up writing, as, it has to write the same data to 2 independent disks > at the same time. And, again, if you've only got one controller, this will slow your write speed down (unless you've got, let's say, two disks that only write half as fast as the bus can supply them with data). > Then there are the really weird ones, Raid 5 and 10. RAID 5 is weird? But it's the most commonly used in the real world... > Raid 10 is a Raid 1 where each 'disk' is in actuality a raid 0 > disk. You mean RAID 0+1, not RAID 10. RAID 10 is the other way around (RAID 0 across RAID 1 arrays.) > Raid 2 isn't used (I think) and Raid 3 and 5 > have stuff to do with parity disks (a whole disk is set up for verifying > data in the case of 3, in 5 the parity is spread over various disks -- > basically, faster than just 1 disk, but, has safety built in [at the cost of > a whole disk]). That's not exactly correct. RAID 2 is used infrequently; it provides error correction by way of hamming codes (which wastes more of your disk on error correction, leaving less for real data). It's expensive, but it does a better (by which I mean faster) job of error correcting on the fly. RAID 3 and 4 both keep a separate parity disk (you lose one disk out of your set to parity; more disks in your set mean you get more of your purchased capacity). 3 stripes each block across the disks, 4 writes a full block to each disk. (So 3's parity is of a block, whereas 4's parity is of n-1 blocks.) Each of these makes sense in different places. RAID 5 (which is *quite* common, not weird at all) does writes a block to each disk, then a parity block to the last disk. Which disk gets parity migrates in consecutive passes across the disks. RAID 6 is this, but with two parity blocks. (With RAID 5, you can continue to function with one bad disk in the set; with RAID 6 you can continue to function with two bad disks. Mttf of three disks in a set of four disks--the minimum necessary for RAID 6, though you really want more like 16, probably--is ludicrously large.) That's all I ever actually remember, though there's some other funky stuff (somebody's proprietary controller design to allow access directly to all blocks in a stripe simultaneously, striping across RAID 3, so forth). In any case, this needn't be a point for speculation. Google's first hit on the topic (presuming it's still the first hit for "raid levels") is what I usually check when I forget the RAID distinctions (I always reverse 0 and 1). See: http://www.acnc.com/04_00.html -- gabriel rosenkoetter gr@eclipsed.net Attachment:
pgpx3jtL3m2G2.pgp
|
|