Search Postgresql Archives

Re: why hash on the primary key?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Robert Haas" <robertmhaas@xxxxxxxxx> writes:
>> What's strange about it?  A probe into an in-memory hashtable is a lot
>> cheaper than a probe into an index, so this type of plan makes plenty
>> of sense if the hashtable will fit in RAM and there are going to be a
>> lot of probes.  (Where "a lot" means "enough to amortize the cost of
>> building the hashtable", of course.)

> Hmm...  it didn't occur to me that the index probe itself might be
> more expensive than a hash probe.  Is that due to concurrency control,
> or are you talking about the need to possibly read index pages in from
> disk?

Both, plus the loss of sequentiality of access to the table itself.

>>> Experimentation shows this is actually about 25% faster.
>> 
>> Well, that just says your cost parameters need a bit of adjustment
>> if you'd like the planner to get the crossover point exactly right.

> Any sense of which ones might be worth fiddling with?

random_page_cost, effective_cache_size, maybe the cpu_xxx parameters.

			regards, tom lane

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux