Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Jan 2001 21:31:52 -0800
From:      Mike Smith <msmith@freebsd.org>
To:        "Jim C. Nasby" <jim@nasby.net>
Cc:        Mike Tancsa <mike@sentex.net>, Sys Admin <admin@cb21.co.jp>, freebsd-stable@freebsd.org
Subject:   Re: RAID configuration for a mail server (1 or 5) 
Message-ID:  <200101220532.f0M5VqD01716@mass.dis.org>
In-Reply-To: Your message of "Sat, 20 Jan 2001 01:26:00 CST." <3A693D88.9D1F4E3D@nasby.net> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Mike Tancsa wrote:
> > For speed, reliability and cost, have a look at the 4port 3ware card
> > (www.3ware.com) in RAID 10 config.  Two RAID0 sets mirrored together. Get
> 
> FWIW, a RAID0 of RAID1 sets is more desireable. When one of the drives
> fails, you only have to rebuild one drive, using it's mirrored
> counterpart. In the other case, you have to rebuild an entire RAID0 set
> from another set, tying up every drive in the system.

This depends on how smart the RAID controller is; AFAIR the 3ware 
controller is actually doing striped "TwinStor" groups, but I'm on the 
road and would have to check when I get home.

> Also, depending on
> how the mirroring is done, simultaneous failure of a drive on each
> mirror could render you without any data. While it would be really bad
> luck to lose two drives at once, the odds losing one on each mirror are
> far greater than losing both drives in a two-drive mirror that happens
> to be part of a stripe set.

I'd have a hard time accepting that 10+ years into the evolution of RAID 
technology, anything other than a dime-store controller would do this. 8)

> BTW, if memory serves, the downside that RAID 5 has over RAID 0 is that
> in order to update a segment of the set, you must first read the entire
> segment in, then recalculate it with the changed data, then write the
> changes back out. This will very often result in 2x the number of r/w
> operations as the number of drives.

Um, I'd recommend a quick RAID-101 course. 8)  You can read the original 
data block, the checksum block, and from the delta between the original 
block, the new data and using the checksum data you can regenerate the 
checksum.  This typically involves two reads and two writes for a given 
write, although normally the reads are performed on a fairly large block 
to improve sequential performance (some will read a whole stripe, others 
like eg. Mylex use 8k (default) 'cache lines' as the basic unit for this 
operation).  You only actually have to read the data that backs the data 
being written though.

-- 
... every activity meets with opposition, everyone who acts has his
rivals and unfortunately opponents also.  But not because people want
to be opponents, rather because the tasks and relationships force
people to take different points of view.  [Dr. Fritz Todt]
           V I C T O R Y   N O T   V E N G E A N C E




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101220532.f0M5VqD01716>