Create Index Performance Issue

From: Rudolf van der Leeden <vanderleeden(at)logicunited(dot)com>
To: pgsql-admin(at)postgresql(dot)org
Cc: Rudolf van der Leeden <vanderleeden(at)logicunited(dot)com>
Subject: Create Index Performance Issue
Date: 2008-06-04 09:43:24
Message-ID: 7EB14E30-23D1-49FF-AB57-E53A8CD3AE72@logicunited.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Hi,

I'm currently testing a 25G Postgres 8.3.0 database on Apple Xserve/
Intel with Mac OSX 10.5 (Leopard).

There are two identical machines with identical configurations (hw
and sw).
Running a pg_restore of a binary backup file (3.8 GB) on both
machines gives the following results:

Machine A : 90 minutes
Machine B: 60 minutes

The postgres server logfiles show the cause of the time difference:
The SQL query
CREATE INDEX login_session_identifier ON login_session USING
btree (identifier)
consumes very different execution times:

Machine A : 1905 seconds
Machine B: 292 seconds

The difference of 27 minutes explains the pg_restore behaviour.
The same effect can be demonstrated easily by just running the SQL
query manually.

Some database infos:
Table login_session : 33,996,225 rows, 10.6 GB on disk
Column identifier : character varying (255)
Index login_session_identifier : 1.3 GB on disk

Postgres configuration file is of course the same on both machines.
The maintenance_work_mem is set to 128MB . I played with this
parameter setting it
up to 2 GB. This didn't change the execution times essentially. With
large values
the times went a little up.

I would appreciate any advices on how to investigate this problem any
further.
Ideas are very welcome.

Thanks in advance,
Rudolf VanderLeeden
Logic United GmbH, Germany
vanderleeden(at)logicunited(dot)com

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Tino Schwarze 2008-06-04 09:58:29 Re: Create Index Performance Issue
Previous Message Mikel Lindsaar 2008-06-04 06:39:59 unrecognized configuration parameter "synchronize_seqscans"