pg.ddx.io  pgsql-admin@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Rui DeSousa <rui@crazybean.net>
To: Scott Ribe <scott_ribe@elevated-dev.com>
Cc: pgsql-admin <pgsql-admin@lists.postgresql.org>
Subject: Re: WAL & ZFS
Date: Fri, 1 Apr 2022 16:23:29 -0400
Message-ID: <E43F5F43-456E-459D-B0D5-680F599097F9@crazybean.net> (raw)
In-Reply-To: <698D568E-058B-430D-8339-ABDA350FA742@elevated-dev.com>
References: <FC215502-166A-49DB-B3DA-D08727A34C0B@elevated-dev.com>
	<4fe1d719-4f08-7b10-90c3-43514453757d@gmail.com>
	<41B83C10-CE63-467C-A613-FD457237A31B@crazybean.net>
	<698D568E-058B-430D-8339-ABDA350FA742@elevated-dev.com>



> On Apr 1, 2022, at 1:56 PM, Scott Ribe <scott_ribe@elevated-dev.com> wrote:
> 
>> On Apr 1, 2022, at 11:49 AM, Rui DeSousa <rui@crazybean.net> wrote:
>> 
>> If you’re using RAIDZ# then performance is going to be heavily impacted and I would highly recommend NOT using RAIDZ# for a database server.
> 
> Actually, I found even the performance of RAIDZ1 to be acceptable after appropriate configuration--current versions, lz4, etc.
> 

It might be for a low iops system; however, I would still recommend against it.  I haven’t used RAIDZ in years; it might be good for an archive system but I don’t see the value of it in a production database server.  You also have to account for drive failures and replacement time.  A replacement in a RAIDZ configuration is much more expense than replacing a disk in a mirrored set.  Disks today are larger as well and the risk of another failure during a rebuild is exponential increased thus the need for RAIDZ2 and RAIDZ3.

Personally and for logical reasons I would build a RAIDZ in powers of 2;  i.e. 2, 4, 8 drives plus parity and then have a stripe set of RAIDZ2.  So the first option would require 4 drives (2D + 2P) and would have same storage as a RAID10 configuration; however, the RAID10 would perform better under load.  The 4+p option seems to be the sweet spot as the rebuild times on larger sets are not worth it nor is it worth spreading out 128k over 8 drives - of course one could use a larger record size, but would you want to? For me 128k/16k is only 8 database blocks; reminds me of using Oracle’s readahead=8 option :).

Note: raidz does not alway stripe across all drives in the set like in a traditional raid set.  i.e. It might only use 2+p instead of 8+p as configured — it depends on the size of the current ZFS record size being written out and free space.




view thread (13+ messages)  latest in thread

Message-ID: <E43F5F43-456E-459D-B0D5-680F599097F9@crazybean.net>
Permalink:  ../E43F5F43-456E-459D-B0D5-680F599097F9@crazybean.net/
Also on:    postgresql.org/message-id/E43F5F43-456E-459D-B0D5-680F599097F9@crazybean.net

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-admin@postgresql.org
  Cc: rui@crazybean.net, scott_ribe@elevated-dev.com, pgsql-admin@lists.postgresql.org
  Subject: Re: WAL & ZFS
  In-Reply-To: <E43F5F43-456E-459D-B0D5-680F599097F9@crazybean.net>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox