Re: Improving insert performance

From: Roland Müller <rolmur(at)gmail(dot)com>
To: Greg Sabino Mullane <htamfids(at)gmail(dot)com>, pgsql-performance(at)postgresql(dot)org, Русинов Семен <mrpinkolik(at)gmail(dot)com>
Subject: Re: Improving insert performance
Date: 2026-05-08 03:31:14
Message-ID: CA+8p0G2TjxcxuJeTy=TLc5vaPWPbAPQwunp3f+r18Q73mt002A@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-performance

JDBC is using autocommit by default.

You can switch it off and start using explit commits.

connection.setAutoCommit(false);

Greg Sabino Mullane <htamfids(at)gmail(dot)com> ezt írta (időpont: 2026. máj. 5.,
K 6:05):

> You can definitely do better than 35k rps. Setting the table as unlogged
> is a great start. Are you using prepared queries? Have you tried COPY? What
> is the size of the typical rows going in? Have you tried version 18?
>
> By using small string values and COPY, I can easily get over 1 million
> rows per second on a single thread, on an underpowered and fairly busy
> laptop, to give you a rough idea of potential. Checking wait_events as
> Laurenz says is a great idea. I'd also do 10 inserts with
> log_statement='all' on so you can see exactly what the driver and
> application are really doing for those inserts. Play around with the thread
> sizes to find the best combo.
>
> > transactional inserts: yes
>
> This is worrisome - are you committing after every insert? That's gonna
> hurt performance.
>
>
> Cheers,
> Greg
>
>

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Jan Jongen 2026-05-11 08:33:13 Unexpected seq scan on table with JSONB column
Previous Message Greg Sabino Mullane 2026-05-05 03:05:11 Re: Improving insert performance