pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Sven Willenberger <sven@dmv.com>
To: Oliver Crosby <ryusei@gmail.com>
Cc: Dawid Kuroczko <qnex42@gmail.com>
Cc: Kevin Grittner <Kevin.Grittner@wicourts.gov>
Cc: jd@commandprompt.com
Cc: pgsql-performance@postgresql.org
Subject: Re: Looking for tips
Date: Tue, 19 Jul 2005 16:46:01 -0400
Message-ID: <1121805961.3674.25.camel@lanshark.dmv.com> (raw)
In-Reply-To: <1efd553a050719132836c31b78@mail.gmail.com>
References: <s2dd0700.023@gwmta.wicourts.gov>
	<1efd553a0507191308219a098b@mail.gmail.com>
	<758d5e7f0507191319636afaa3@mail.gmail.com>
	<1efd553a050719132836c31b78@mail.gmail.com>

On Tue, 2005-07-19 at 16:28 -0400, Oliver Crosby wrote:
> > If it is possible try:
> > 1) wrapping many inserts into one transaction
> > (BEGIN;INSERT;INSERT;...INSERT;COMMIT;).  As PostgreSQL will need to
> > handle less transactions per second (each your insert is a transaction), it
> > may work faster.
> 
> Aye, that's what I have it doing right now. The transactions do save a
> HUGE chunk of time. (Cuts it down by about 40%).
> 
> > 2) If you can do 1, you could go further and use a COPY command which is
> > the fastest way to bulk-load a database.
> 
> I don't think I can use COPY in my case because I need to do
> processing on a per-line basis, and I need to check if the item I want
> to insert is already there, and if it is, I need to get it's ID so I
> can use that for further processing.
> 

since triggers work with COPY, you could probably write a trigger that
looks for this condition and does the ID processsing you need; you could
thereby enjoy the enormous speed gain resulting from COPY and maintain
your data continuity.

Sven




view thread (28+ messages)  latest in thread

Message-ID: <1121805961.3674.25.camel@lanshark.dmv.com>
Permalink:  ../1121805961.3674.25.camel@lanshark.dmv.com/
Also on:    postgresql.org/message-id/1121805961.3674.25.camel@lanshark.dmv.com

 · 

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: sven@dmv.com, ryusei@gmail.com, qnex42@gmail.com, Kevin.Grittner@wicourts.gov, jd@commandprompt.com
  Subject: Re: Looking for tips
  In-Reply-To: <1121805961.3674.25.camel@lanshark.dmv.com>

* 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