pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Stephen Frost <sfrost@snowman.net>
Cc: Jay Greenfield <jag@timberline.ca>
Cc: pgsql-performance@postgresql.org
Subject: Re: Postgres slower than MS ACCESS
Date: Tue, 14 Feb 2006 15:42:44 -0500
Message-ID: <22347.1139949764@sss.pgh.pa.us> (raw)
In-Reply-To: <20060214172022.GC4474@ns.snowman.net>
References: <200602141551.k1EFpN6F020512@timberline.ca>
	<20060214172022.GC4474@ns.snowman.net>

Stephen Frost <sfrost@snowman.net> writes:
> While it's true that Access almost certainly takes some shortcuts, 24
> minutes for an update across 1.2 millon rows seems an awefully long time
> for Postgres.

I did some experiments along this line with a trivial table (2 integer
columns) of 1.28M rows.  I used CVS tip with all parameters at defaults.
With no indexes, an UPDATE took about 50 seconds.  With one index, it
took 628 seconds.  It's not hard to believe you could get to Jay's
figures with multiple indexes.

Looking in the postmaster log, I see I was getting checkpoints every few
seconds.  Increasing checkpoint_segments to 30 (a factor of 10) brought
it down to 355 seconds, and then increasing shared_buffers to 20000
brought it down to 165 sec.  Separating WAL and data onto different
disks would have helped too, no doubt, but I'm too lazy to try it.

			regards, tom lane



view thread (14+ messages)  latest in thread

Message-ID: <22347.1139949764@sss.pgh.pa.us>
Permalink:  ../22347.1139949764@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/22347.1139949764@sss.pgh.pa.us

 · 

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-performance@postgresql.org
  Cc: tgl@sss.pgh.pa.us, sfrost@snowman.net, jag@timberline.ca
  Subject: Re: Postgres slower than MS ACCESS
  In-Reply-To: <22347.1139949764@sss.pgh.pa.us>

* 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