From: | Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> |
---|---|
To: | Kevin Grittner <kgrittn(at)ymail(dot)com> |
Cc: | Markus Wanner <markus(at)bluegap(dot)ch>, Claudio Freire <klaussfreire(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Yuri Levinsky <yuril(at)celltick(dot)com>, PostgreSQL-Dev <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Hash partitioning. |
Date: | 2013-06-26 15:46:05 |
Message-ID: | 51CB0CBD.3030601@vmware.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 26.06.2013 18:34, Kevin Grittner wrote:
> Markus Wanner<markus(at)bluegap(dot)ch> wrote:
>> On 06/25/2013 11:52 PM, Kevin Grittner wrote:
>>> At least until we have parallel
>>> query execution. At *that* point this all changes.
>>
>> Can you elaborate on that, please? I currently have a hard time
>> imagining how partitions can help performance in that case,
>> either.
>
> Well, partitioning will *still* be a net loss for overall
> throughput on a machine with enough active connections to keep all
> the resources busy. Where it will help is when you have a machine
> with a lot of cores and a few big "reporting" style queries. Since
> we currently can only use one core for a single query, we leave a
> lot of CPU time (often the bottleneck for such queries) unused. If
> we allow a large query to search multiple partitions in parallel, a
> big query can complete sooner.
We could also allow a large query to search a single table in parallel.
A seqscan would be easy to divide into N equally-sized parts that can be
scanned in parallel. It's more difficult for index scans, but even then
it might be possible at least in some limited cases.
- Heikki
From | Date | Subject | |
---|---|---|---|
Next Message | Stephen Frost | 2013-06-26 15:50:58 | Re: A better way than tweaking NTUP_PER_BUCKET |
Previous Message | Kevin Grittner | 2013-06-26 15:34:17 | Re: Hash partitioning. |