From owner-freebsd-stable@FreeBSD.ORG Sat Aug 18 00:45:47 2007 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E5F0F16A419 for ; Sat, 18 Aug 2007 00:45:47 +0000 (UTC) (envelope-from tom@samplonius.org) Received: from ly.sdf.com (ly.sdf.com [216.113.193.83]) by mx1.freebsd.org (Postfix) with ESMTP id AF69D13C45E for ; Sat, 18 Aug 2007 00:45:47 +0000 (UTC) (envelope-from tom@samplonius.org) Received: from localhost (localhost [127.0.0.1]) by ly.sdf.com (Postfix) with ESMTP id 109D42283AE; Fri, 17 Aug 2007 17:45:03 -0700 (PDT) X-Virus-Scanned: amavisd-new at X-Spam-Score: -3.967 X-Spam-Level: X-Spam-Status: No, score=-3.967 tagged_above=-10 required=6.6 tests=[ALL_TRUSTED=-1.8, AWL=0.432, BAYES_00=-2.599] Received: from ly.sdf.com ([127.0.0.1]) by localhost (ly.sdf.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TE0NTyM-T4cL; Fri, 17 Aug 2007 17:45:00 -0700 (PDT) Received: from ly.sdf.com (ly.sdf.com [216.113.193.83]) by ly.sdf.com (Postfix) with ESMTP id 4EC3E228391; Fri, 17 Aug 2007 17:45:00 -0700 (PDT) Date: Fri, 17 Aug 2007 17:45:00 -0700 (PDT) From: Tom Samplonius To: Clayton Milos Message-ID: <23425261.211187397900250.JavaMail.root@ly.sdf.com> In-Reply-To: <000f01c7e122$1d91a390$0301a8c0@claylaptop> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [64.251.80.98] Cc: Vivek Khera , FreeBSD Stable Subject: Re: large RAID volume partition strategy X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 18 Aug 2007 00:45:48 -0000 ----- "Clayton Milos" wrote: > If you goal is speed and obviously as little possibility of a fail > (RAID6+spare) then RAID6 is the wrong way to go... > RAID6's read speeds are great but the write speeds are not. > If you want awesome performance and reliability the real way to go is > RAID10 > (or more correctly RAID 0+1). RAID6 has better reliability than RAID10, because in RAID6, you can survive the failure of _any_ two disks. In RAID10, double disks failures are only survivable if specific disks fail (alternates). In RAID10 sets this is a problem. So: * Reliability and space: RAID6 * Performance: RAID10 And the performance issues on RAID5/6 on writing is directly proportional to the quality of your controller. Good controllers can do partial stripe updates, and other optimizations to avoid having to read data back before writing anything. A simple minded RAID controller which has to read the entire strip back, writes are 1/3 slower than reads. Any good controller should be about 75% of read the speed. And RAID5+0 and RAID6+1 are also good options. And make sure your controller can do RAID scrubbing. The chances of a fatal failure on an array can be greatly minimized with RAID scrubing. None of the cheap controllers can do this. ZFS can do it though. ZFS software RAID is almost always better than a cheaper hardware RAID, though maybe not fully mature in FreeBSD 7. RAID6 also minimizes the risk of double disk failures. Big huge disks are almost always the wrong choice for databases though. You will never be able to fill the disk up before you hit the IOPS limit per each spindle. A 15K SAS disk has at least twice the IOPS of a 7K SATA disk. And while adding another bank to your RAID0 array doubles your IOPS in theory, it isn't exactly a linear increase. You need the IOPS, it is better to start with faster disks. Tom