Re: FILLFACTOR and increasing index

From: tv(at)fuzzy(dot)cz
To: "Leonardo Francalanci" <m_lists(at)yahoo(dot)it>
Cc: tv(at)fuzzy(dot)cz, pgsql-general(at)postgresql(dot)org
Subject: Re: FILLFACTOR and increasing index
Date: 2011-05-10 12:33:53
Message-ID: 4cf45554a25f6882f74300264d0a65dd.squirrel@sq.gransy.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

>
>> What about the index size? How much space do they occupy? Analyze the
>> table and do this
>
>
> Of course space is different. That's not the point. The point is: I'm
> willing
> to pay the price for another HD, if that helps with performance. But it
> doesn't.
>
>>
>> The minimal performance difference is probably caused by the fact that
>> we're dealing with int4 column (and you've used just 100000 rows, i.e.
>> about 0.5MB of data) so the index is going to be tiny anyway.
>
> I've used 10M rows, not 100000.

OK, I've misread the query - still, it's just 50MB of data.

>> Let's try to do that with varchar(32) column, just do something like
>> this
>
>
> Did it with 5M rows. Still no difference.

Hm, so the page splits probably are not that expensive to affect this.

I wonder whether this would be true with multiple processes inserting data
into the index concurrently. I guess the process needs to obtain a lock to
do the page split, and that might make them much more expensive due to
contention.

But maybe I'm completely wrong - I really am not that familiar with btree
internals yet and didn't have to investigate this.

Anyway in your case (insert only, single process) I'd probably go with the
default value (fillfactor=90).

regards
Tomas

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Pavel Stehule 2011-05-10 12:38:23 Re: COPY complaining about unquoted carriage return found in data... in a quoted field
Previous Message Ivan Sergio Borgonovo 2011-05-10 12:28:40 COPY complaining about unquoted carriage return found in data... in a quoted field