Re: Performance on Bulk Insert to Partitioned Table

From: Charles Gomes <charlesrg(at)outlook(dot)com>
To: Ondrej Ivanič <ondrej(dot)ivanic(at)gmail(dot)com>
Cc: "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org>
Subject: Re: Performance on Bulk Insert to Partitioned Table
Date: 2012-12-20 22:59:18
Message-ID: BLU002-W73F8F8D02096BD549F2809AB370@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

True, that's the same I feel, I will be looking to translate the trigger to C if I can find good examples, that should accelerate.
Using rules would be totally bad as I'm partitioning daily and after one year having 365 lines of IF won't be fun to maintain.

----------------------------------------
> Date: Fri, 21 Dec 2012 09:50:49 +1100
> Subject: Re: [PERFORM] Performance on Bulk Insert to Partitioned Table
> From: ondrej(dot)ivanic(at)gmail(dot)com
> To: charlesrg(at)outlook(dot)com
> CC: pgsql-performance(at)postgresql(dot)org
>
> Hi,
>
> On 21 December 2012 04:29, Charles Gomes <charlesrg(at)outlook(dot)com> wrote:
> > When I target the MASTER table on all the inserts and let
> > the trigger decide what partition to choose from it takes 4 hours.
> >
> > If I target the partitioned table directly during the
> > insert I can get 4 times better performance. It takes 1 hour.
>
> Yes, that's my experience as well. Triggers are the slowest.
> Performance of "DO INSTEAD" rule is close to direct inserts but rule
> setup is complex (each partition needs one):
>
> create or replace rule <master_table>_insert_<partition_name> as on
> insert to <master_table>
> where new.<part_column> >= ... and
> new.<part_column> < ....
> do instead
> insert into <master_table>_<partition_name>
> values (new.*)
>
> The best is used to direct inserts (into partition) if you can.
>
> --
> Ondrej Ivanic
> (http://www.linkedin.com/in/ondrejivanic)
>
>
> --
> Sent via pgsql-performance mailing list (pgsql-performance(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-performance

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Tom Lane 2012-12-20 23:39:07 Re: Performance on Bulk Insert to Partitioned Table
Previous Message Charles Gomes 2012-12-20 22:56:24 Re: Performance on Bulk Insert to Partitioned Table