From: | Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Leonardo F <m_lists(at)yahoo(dot)it>, pgsql-general <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: performance problems inserting random vals in index |
Date: | 2010-04-19 17:06:18 |
Message-ID: | q2xdcc563d11004191006sfeae98a0r73e4f336b6bbed1c@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Mon, Apr 19, 2010 at 11:04 AM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Leonardo F <m_lists(at)yahoo(dot)it> writes:
>> I have a simple table that has indexes on 2 integer columns.
>> Data is inserted very often (no updates, no deletes, just inserts):
>> at least 4000/5000 rows per second.
>> The input for the 2 indexed columns is very random.
>
>> Everything is "fine" for the first 10-20M rows; after that, performance
>> gets worse and worse, and by 50M rows I can't insert more than
>> 1500 rows per second.
>
>> How can I improve it?
>
> Does it help to reindex the index at that point?
>
>> 1) the table is already partitioned; at the moment it's based on
>> 30 partitions. What kind of "select" performance impact would I
>> hit going to 3000 partitions?
>
> Bad. The partitioning code isn't designed to scale beyond a few dozen
> partitions.
On a few very narrow applications I've gotten good performance in the
low hundreds. After that things fall apart quickly.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-04-19 17:06:37 | Re: How to insert Ecoded values into postrgresql |
Previous Message | Tom Lane | 2010-04-19 17:04:30 | Re: performance problems inserting random vals in index |