Re: Hash partitioning.

From: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
To: Yuri Levinsky <yuril(at)celltick(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Christopher Browne <cbbrowne(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, PostgreSQL Mailing Lists <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Hash partitioning.
Date: 2013-06-26 11:23:08
Message-ID: 51CACF1C.7070104@vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 26.06.2013 11:17, Yuri Levinsky wrote:
> The main purpose of partitioning in my world
> is to store billions of rows and be able to search by date, hour or even
> minute as fast as possible.

Hash partitioning sounds like a bad fit for that use case. A regular
b-tree, possibly with range partitioning, sounds optimal for that.

> When you dealing with company, which has
> ~350.000.000 users, and you don't want to use key/value data stores: you
> need hash partitioned tables and hash partitioned table clusters to
> perform fast search and 4-6 tables join based on user phone number for
> example.

B-trees are surprisingly fast for key-value lookups. There is no reason
to believe that a hash partitioned table would be faster for that than a
plain table.

- Heikki

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Rushabh Lathia 2013-06-26 11:34:01 Re: proposal 9.4 plpgsql: allows access to call stack from GET DIAGNOSTICS statement
Previous Message Andres Freund 2013-06-26 11:22:58 Re: PQConnectPoll, connect(2), EWOULDBLOCK and somaxconn