From owner-freebsd-isp Wed Dec 16 22:15:32 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id WAA10315 for freebsd-isp-outgoing; Wed, 16 Dec 1998 22:15:32 -0800 (PST) (envelope-from owner-freebsd-isp@FreeBSD.ORG) Received: from jcarter.cais.com (jcarter.cais.com [205.252.8.97]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id WAA10309 for ; Wed, 16 Dec 1998 22:15:28 -0800 (PST) (envelope-from patton@sysnet.net) Received: from [192.168.1.10] (saturn.falcon.com [192.168.1.10]) by jcarter.cais.com (8.9.1a/8.8.5) with ESMTP id AAA04612; Thu, 17 Dec 1998 00:54:21 -0500 (EST) Message-Id: In-Reply-To: <3.0.5.32.19981215231329.00966ae0@mail.kersur.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Thu, 17 Dec 1998 01:05:29 -0500 To: Dan Swartzendruber From: Matthew Patton Subject: Re: RAID solutions? Cc: freebsd-isp@FreeBSD.ORG Sender: owner-freebsd-isp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org for a news spool you want SPEED, SPEED, and SPEED!! You do *NOT* want RAID5 (it's damn slow on writes) and most definately NOT in software. Get a slew of disks and use raid 10 (stripe + mirror) for utmost speed. Given modern disks, 4 on a channel will tend to saturate the bus. Theoretical performance numbers will not be reached due to firmware bugs in drives (common) or inefficient drivers. Here are my suggestions, all are predominantly HW based. In all cases, 1 hot spare per channel. Plenty of ambient cooling and power regulation is needed. In addition to the simple 'art' of RAID selection there is also 'slice/interleave' size to factor in. With drives doing full track read aheads with their own fancy algorithms and varying lamounts of onboard cache, precise numbers are very difficult to come up with. It depends on what kinds of IO you do. On a database, I would probably use 16 or 32kb. A media server (large files) 64kb or more. On boxes with lots of small sizes, accessed randomly and rapidly, 8 or 16kb. But you dont' want to fill up the controller's command queue with too many commands. 1 FAST!! SCSI controller in host. 2 or 3 channel RAID card with 32MB RAM. 4 active disks per channel, 1 hot spare per channel. with 2 channel card: preferred: interlace disks (stripe same letter [A1-A4], mirror across letters [A->B]) you can afford to loose a whole channel and it will stay up. theoretical maximum READ thruput (forced balancing) slightly more involved ASIC computational overhead A1 A2 A3 A4 B2 B1 B4 B3 next best: strip the disks (raid 0) per channel Mirror across the SCSI channels higher probability for IO contention on reads (high load on SCSI queue) RAID controller may favor one bus instead of using both conceptually simpler design, less computational overhead in RAID ASIC A1 B1 A2 B2 A3 B3 A4 B4 With the 3 channel card you can do RAID 50 two ways: preferred: stripe disks (raid 0) per channel raid 5 across the 3 channels (A->B->C) near maximum READ thruput A1 B1 C1 A2 B2 C2 A3 B3 C3 A4 B4 C4 next best: raid 5 the drives per channel stripe (raid 0) across channels heavy IO contention per write on channel A1 A2 A3 B1 B2 B3 C1 C2 C3 D1 D2 D3 Or you can interlace the stripe and mirror drives across the busses for RAID 10. A1 A2 A3 B2 B3 B1 A4 A5 A6 B5 B6 B4 2 FAST!! scsi controllers in host 2 independant RAID units (2 or maybe three channel) with drives (see above for arrangement options) preferred: (you can afford to loose a whole scsi card in the host) raid 1 across host scsi cards next best: stripe (raid 0) across host scsi cards probably not smart at all -------- OpenBSD - Because security matters... (http://www.openbsd.org/) "There is one terrifying word in the world of nuclear physics, Oops." - Tom Servo, Mystery Science Theator 3000 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isp" in the body of the message