[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: testing raid 0



> Added layer of driver complexity, untuned raidframe config, and the
> fact that the interleave on most drives is tuned for continuous
> reads/writes across the surface, and not periodically interleaved r/w.
>
> Those would be my guesses, but I am not a disk guru. And thats for
> Raid 0. For Raid 1 you have an additional write operation. For Raid 5
> you have additional parity calculations.
>
> jeff

The power of RAID is that it reads/writes to multiple disks at the same
time.  To accomplish this you need to have those disks be addressable
simultaniously.  With SCSI this is easy because SCSI is designed to handle
such activity.  IDE is much less flexible.  To gain benefits from running
an IDE RAID configuration, each drive needs to be on its own IDE
controller.  That way every drive can read/write at the same time.

With RAID 0 the data is written/read from multiple disks at the same time.
In the simplest format that would be block 1 of data to disk A and block 2
of data to disk B, block 3 of data to A and so on.  Blocks 1 and 2 are
written at the same time because they go to different IDE controllers and
different disks.  The two (more) drives are treated as one large disk This
will speed data reading/writing because you've essentially doubled your
data throughput (of course that is ideal and you won't see double, but
you will see a speed increase).  The disadvantage to RAID 0 is that there
is no error/parity going on and so if one disk is destroyed the you lose
the data on the other as well.

RAID 1 writes the same data to both disks at the same time.  Mirroring.
If the disks are on separate controllers then the data is written out at
the same time with only a small amount of overhead to drivers, if that.
*IF* the drives are on the same IDE chain then they have to still be
written/read sequentially because that's how IDE works and you'll actually
see a halving in the disk speed (theoretically).

RAID 5 is another beast altogether.  The disks are being written to in
stripes.  The stripes are across all the disks (you need at least 3 disks)
and a parity stripe is written to a spare disk.  The way it is setup, any
1 disk can crash and the array can still keep going along, and by
replacing that disk the data can be fully recovered.  So for RAID 5 you
get the multi-disk writing advantage of RAID 0 and a very good fault
recovery of RAID 1, but you will need at least 3 disks, and one is
sacrificed to the parity stripes.  As you add more disks you can have
more parity disks as well so that multiple drives can die/be changed
at the same time without losing data.
	RAID 5 is difficult to run in software and is hardware intensive
for IDE (because of the number of IDE controllers needed), so unless you have
a SCSI controller and many matched SCSI disks it's difficult to come up
with RAID 5.  When you do have it!  Wow.

RAID 10 (or 1/0 or 0+1) is a combination of RAID 0 and RAID 1 where you
have two sets of two disks.  So, with say 4 10Gig drives, you pair them
and have two RAID 1 arrays.  Then you put those arrays in a RAID 0 set so
they read/write at twice the speed.  If any one disk dies, it can be
reaplced and re-mirrored off its RAID 1 buddy.  This is easier to do than
RAID 5, but not as fast and doesn't keep as much space per disk.

RAID 4 (yes, Network Appliance filers use it) is very specialized and even
faster than RAID 5.  It relies on writing to the same byte on eight disks
at the same time and a parity byte to a last disk.  All the disks have to
be matched.

There are others, but I haven't run into them yet.

-- 
	-Aaron
	  Crandall

find / -name '*your_base*' | xargs chown us.us;