Re: really quick multiple inserts can use COPY? - Mailing list pgsql-performance

From imad
Subject Re: really quick multiple inserts can use COPY?
Date
Msg-id 1f30b80c0612111122i347e5f31k39a8193db2d4cd10@mail.gmail.com
Whole thread Raw
In response to Re: really quick multiple inserts can use COPY?  (Andreas Kretschmer <akretschmer@spamfence.net>)
List pgsql-performance
On 12/11/06, Andreas Kretschmer <akretschmer@spamfence.net> wrote:
> Jens Schipkowski <jens.schipkowski@apus.co.at> schrieb:
>
> > Hello!
> >
> > In our JAVA application we do multiple inserts to a table by data from a
> > Hash Map. Due to poor database access implemention - done by another
> > company (we got the job to enhance the software) - we cannot use prepared
> > statements. (We are not allowed to change code at database access!)
> > First, we tried to fire one INSERT statement per record to insert. This
> > costs 3 ms per row which is to slow because normally we insert 10.000
> > records which results in 30.000 ms just for inserts.
>
> Can you change this from INSERT-Statements to COPY? Copy is *much*
> faster than INSERT.
>
> If no, do you using all INSERTs in one transaction? I believe, a 'BEGIN'
> and a 'COMMIT' around all INSERTs may increase the speed.


Performance increment can also be gained by disabling constraints in the
transaction. These disabled constraints are invoked at the end of the
transaction according to the SQL standard, so no worries about data
consistency.

Hmmm... PG currently supports disabling foreign constraints only. But that
can still be significant.

--Imad
www.EnterpriseDB.com

pgsql-performance by date:

Previous
From: Michael Stone
Date:
Subject: Re: New to PostgreSQL, performance considerations
Next
From: "Merlin Moncure"
Date:
Subject: Re: New to PostgreSQL, performance considerations