Re: SSD + RAID

From: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Scott Carey <scott(at)richrelevance(dot)com>, Karl Denninger <karl(at)denninger(dot)net>, Greg Smith <greg(at)2ndquadrant(dot)com>, Laszlo Nagy <gandalf(at)shopzeus(dot)com>, pgsql-performance <pgsql-performance(at)postgresql(dot)org>
Subject: Re: SSD + RAID
Date: 2009-11-20 16:47:01
Message-ID: f67928030911200847n660ca44hc66191c04f287345@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Wed, Nov 18, 2009 at 8:24 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Scott Carey <scott(at)richrelevance(dot)com> writes:
>> For your database DATA disks, leaving the write cache on is 100% acceptable,
>> even with power loss, and without a RAID controller. And even in high write
>> environments.
>
> Really? How hard have you tested that configuration?
>
>> That is what the XLOG is for, isn't it?
>
> Once we have fsync'd a data change, we discard the relevant XLOG
> entries. If the disk hasn't actually put the data on stable storage
> before it claims the fsync is done, you're screwed.
>
> XLOG only exists to centralize the writes that have to happen before
> a transaction can be reported committed (in particular, to avoid a
> lot of random-access writes at commit). It doesn't make any
> fundamental change in the rules of the game: a disk that lies about
> write complete will still burn you.
>
> In a zero-seek-cost environment I suspect that XLOG wouldn't actually
> be all that useful.

You would still need it to guard against partial page writes, unless
we have some guarantee that those can't happen.

And once your transaction has scattered its transaction id into
various xmin and xmax over many tables, you need an atomic, durable
repository to decide if that id has or has not committed. Maybe clog
fsynced on commit would serve this purpose?

Jeff

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Jonathan Foy 2009-11-20 18:45:35 Re: View based upon function won't use index on joins
Previous Message Hrishikesh Mehendale 2009-11-20 16:42:11 Re: Partitions and max_locks_per_transaction