Re: improving write performance for logging application

From: "Steinar H(dot) Gunderson" <sgunderson(at)bigfoot(dot)com>
To: Steve Eckmann <eckmann(at)computer(dot)org>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: improving write performance for logging application
Date: 2006-01-04 00:06:03
Message-ID: 20060104000603.GA29469@uio.no
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Tue, Jan 03, 2006 at 04:44:28PM -0700, Steve Eckmann wrote:
> Are there general guidelines for tuning the PostgreSQL server for this kind
> of application? The suggestions I've found include disabling fsync (done),

Are you sure you really want this? The results could be catastrophic in case
of a crash.

> On the client side I've found only two suggestions: disable autocommit and
> use COPY instead of INSERT. I think I've effectively disabled autocommit by
> batching up to several hundred INSERT commands in each PQexec() call, and
> it isn’t clear that COPY is worth the effort in our application.

I'm a bit confused here: How can you batch multiple INSERTs into large
statements for MySQL, but not batch multiple INSERTs into COPY statements for
PostgreSQL?

Anyhow, putting it all inside one transaction (or a few) is likely to help
quite a lot, but of course less when you have fsync=false. Bunding multiple
statements in each PQexec() call won't really give you that; you'll have to
tell the database so explicitly.

/* Steinar */
--
Homepage: http://www.sesse.net/

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message dlang 2006-01-04 03:23:23 Re: improving write performance for logging application
Previous Message Tom Lane 2006-01-04 00:00:12 Re: improving write performance for logging application