Re: Performance of jdbc insert statements and select nextval - Mailing list pgsql-jdbc

From Kris Jurka
Subject Re: Performance of jdbc insert statements and select nextval
Date
Msg-id Pine.BSO.4.64.0902201230530.23634@leary.csoft.net
Whole thread Raw
In response to Performance of jdbc insert statements and select nextval  (ralf.baumhof@bgs-ag.de)
Responses Re: Performance of jdbc insert statements and select nextval  (ralf.baumhof@bgs-ag.de)
List pgsql-jdbc

On Fri, 20 Feb 2009, ralf.baumhof@bgs-ag.de wrote:

> [insert with pgadmin is faster than JDBC]

As I explained previously I believe pgadmin is sending all of your inserts
in one network roundtrip rather than a single insert at a time.  So for
example:

StringBuffer sql = new StringBuffer();
for (int i=0; i<100; i++) {
     sql.append("INSERT INTO mytable (a) VALUES (");
     sql.append(i).append(")");
}
Statement.execute(sql.toString())

will be faster than

for (int i=0; i<100; i++) {
     String sql = "INSERT INTO mytable (a) VALUES (" + i + ")";
     Statement.execute(sql);
}

because the second sample has to make 100 network trips instead of just
one.

> I made a test with "logical" insert of objects which results in 50000
> inserts can be done within 2 minutes, what means 416 inserts per second,
> or 1 insert in 2/1000 sec (2ms). The cost estimate with explain for an
> insert is on the other hand is 0,4 ms.

Explain cost estimates do not have units of milliseconds, so the
comparison is invalid.

Kris Jurka

pgsql-jdbc by date:

Previous
From: Kris Jurka
Date:
Subject: Re: SSL - Providing client certificates
Next
From: Maciek Sakrejda
Date:
Subject: Re: COPY support