On Wed, Jul 14, 2010 at 6:57 PM, Scott Carey <sc...@richrelevance.com>wrote:

> But none of this explains why a 4-disk raid 10 is slower than a 1 disk
> system.  If there is no write-back caching on the RAID, it should still be
> similar to the one disk setup.
>
> Unless that one-disk setup turned off fsync() or was configured with
> synchronous_commit off.  Even low end laptop drives don't lie these days
> about a cache flush or sync() -- OS's/file systems can, and some SSD's do.
>
> If loss of a transaction during a power failure is OK, then just turn
> synchronous_commit off and get the performance back.  The discussion about
> transaction rate being limited by the disks is related to that, and its not
> necessary _IF_ its ok to lose a transaction if the power fails.  For most
> applications, losing a transaction or two in a power failure is fine.
>  Obviously, its not with financial transactions or other such work.
>
>
> On Jul 8, 2010, at 2:42 PM, Craig James wrote:
>
> > On 7/8/10 2:18 PM, timothy.noo...@emc.com wrote:
> >> How does the linux machine know that there is a BBU installed and to
> >> change its behavior or change the behavior of Postgres? I am
> >> experiencing performance issues, not with searching but more with IO.
> >
> > It doesn't.  It trusts the disk controller.  Linux says, "Flush your
> cache" and the controller says, "OK, it's flushed."  In the case of a BBU
> controller, the controller can say that almost instantly because it's got
> the data in a battery-backed memory that will survive even if the power goes
> out.  In the case of a non-BBU controller (RAID or non-RAID), the controller
> has to actually wait for the head to move to the right spot, then wait for
> the disk to spin around to the right sector, then write the data.  Only then
> can it say, "OK, it's flushed."
> >
> > So to Linux, it just appears to be a disk that's exceptionally fast at
> flushing its buffers.
> >
> > Craig
> >
> >>
> >> -----Original Message-----
> >> From: pgsql-performance-ow...@postgresql.org
> >> [mailto:pgsql-performance-ow...@postgresql.org] On Behalf Of Craig
> James
> >> Sent: Thursday, July 08, 2010 4:02 PM
> >> To: pgsql-performance@postgresql.org
> >> Subject: Re: [PERFORM] performance on new linux box
> >>
> >> On 7/8/10 12:47 PM, Ryan Wexler wrote:
> >>>
> >>>
> >>> On Thu, Jul 8, 2010 at 12:46 PM, Kevin Grittner
> >>> <kevin.gritt...@wicourts.gov<mailto:kevin.gritt...@wicourts.gov>>
> >> wrote:
> >>>
> >>>     Ryan Wexler<r...@iridiumsuite.com<mailto:r...@iridiumsuite.com>>
> >>>     wrote:
> >>>
> >>>> One thing I don't understand is why BBU will result in a huge
> >>>> performance gain.  I thought BBU was all about power failures?
> >>>
> >>>     Well, it makes it safe for the controller to consider the write
> >>>     complete as soon as it hits the RAM cache, rather than waiting for
> >>>     persistence to the disk itself.  It can then schedule the writes
> >> in
> >>>     a manner which is efficient based on the physical medium.
> >>>
> >>>     Something like this was probably happening on your non-server
> >>>     machines, but without BBU it was not actually safe.  Server class
> >>>     machines tend to be more conservative about not losing your data,
> >>>     but without a RAID controller with BBU cache, that slows writes
> >> down
> >>>     to the speed of the rotating disks.
> >>>
> >>>     -Kevin
> >>>
> >>> Thanks for the explanations that makes things clearer.  It still
> >> amazes
> >>> me that it would account for a 5x change in IO.
> >>
> >> It's not exactly a 5x change in I/O, rather it's a 5x change in
> >> *transactions*.  Without a BBU Postgres has to wait for each transaction
> >> to by physically written to the disk, which at 7200 RPM (or 10K or 15K)
> >> means a few hundred per second.  Most of the time Postgres is just
> >> sitting there waiting for the disk to say, "OK, I did it."  With BBU,
> >> once the RAID card has the data, it's virtually guaranteed it will get
> >> to the disk even if the power fails, so the RAID controller says, "OK, I
> >> did it" even though the data is still in the controller's cache and not
> >> actually on the disk.
> >>
> >> It means there's no tight relationship between the disk's rotational
> >> speed and your transaction rate.
> >>
> >> Craig
> >>
> >
> >
> > --
> > Sent via pgsql-performance mailing list (
> pgsql-performance@postgresql.org)
> > To make changes to your subscription:
> > http://www.postgresql.org/mailpref/pgsql-performance
>
>
> --
> Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-performance
>

Something was clearly wrong with my former raid card.  Frankly, I am not
sure if it was configuration or simply hardware failure.  The server is
hosted so I only had so much access.  But the card was swapped out with a
new one and now performance is quite good.  I am just trying to tune the new
card now.
thanks for all the input

Reply via email to