Re: Hash Function

From: Jim Nasby <Jim(dot)Nasby(at)BlueTreble(dot)com>
To: Ravi Kiran <ravi(dot)kolanpaka(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Hash Function
Date: 2015-01-12 22:08:46
Message-ID: 54B445EE.7070000@BlueTreble.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 1/11/15 8:52 AM, Ravi Kiran wrote:
> Hi,
>
> I want to know what kind of hash function postgres is using currently, can someone please explain the algorithm postgres is using for the hash function in the hash join algorithm.

That's ultimately going to be determined by the operator family of the data types involved in the join, but generally stuff uses the internal hash function which is a modified Jenkins hash.

BTW, I just investigated switching the algorithm we use for buffer hashing [1]. Turned out to be a dead end, but it's very possible that a newer hash than Jenkins (ie: CityHash or FarmHash) would be a win for larger data.

[1] http://www.postgresql.org/message-id/24160.1419460117@sss.pgh.pa.us
--
Jim Nasby, Data Architect, Blue Treble Consulting
Data in Trouble? Get it in Treble! http://BlueTreble.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Stephen Frost 2015-01-12 22:16:40 Re: WITH CHECK and Column-Level Privileges
Previous Message David Fetter 2015-01-12 21:58:43 Re: To do for psql to show installable extensions