Re: On Scalability

From: Vincenzo Romano <vincenzo(dot)romano(at)notorand(dot)it>
To: jd(at)commandprompt(dot)com
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: On Scalability
Date: 2010-07-29 17:34:20
Message-ID: AANLkTikV96eAFxEuqk4k6jadtDomLhnJrwqtEh3mNKs6@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-performance

2010/7/29 Joshua D. Drake <jd(at)commandprompt(dot)com>:
> On Thu, 2010-07-29 at 19:08 +0200, Vincenzo Romano wrote:
>> Hi all.
>> I'm wondering about PGSQL scalability.
>> In particular I have two main topics in my mind:
>>
>> 1. What'd be the behavior of the query planner in the case I have
>> a single huge table with hundreds or thousands of partial indexes
>> (just differing by the WHERE clause).
>> This is an idea of mine to make index-partitioning instead of
>> table-partitioning.
>
> Well the planner is not going to care about the partial indexes that
> don't match the where clause but what you are suggesting is going to
> make writes and maintenance extremely expensive. It will also increase
> planning time as the optimizer at a minimum has to discard the use of
> those indexes.
>
>>
>> 2. What'd be the behavior of the query planner in the case I have
>> hundreds or thousands of child tables, possibly in a multilevel hierarchy
>> (let's say, partitioning by year, month and company).
>
> Again, test it. Generally speaking the number of child tables directly
> correlates to planning time. Most experience that 60-100 tables is
> really the highest you can go.
>
> It all depends on actual implementation and business requirements
> however.
>
> Sincerely,
>
> Joshua D. Drake

I expect that a more complex schema will imply higher workloads
on the query planner. What I don't know is how the increase in the
workload will happen: linearly, sublinearly, polinomially or what?

Significant testing would require a prototype implementation with
an almost complete feed of data from the current solution.
But I'm at the feasibility study stage and have not enough resources
for that.

Thanks anyway for the insights, Joshua.
Does the 60-100 tables limit applies to a single level
of inheritance? Or is it more general?

--
NotOrAnd Information Technologies
Vincenzo Romano
--
NON QVIETIS MARIBVS NAVTA PERITVS

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Joshua D. Drake 2010-07-29 17:39:44 Re: On Scalability
Previous Message Robert Haas 2010-07-29 17:20:20 Re: string_to_array has to be stable?

Browse pgsql-performance by date

  From Date Subject
Next Message Josh Berkus 2010-07-29 17:39:14 Re: Pooling in Core WAS: Need help in performance tuning.
Previous Message Joshua D. Drake 2010-07-29 17:12:06 Re: On Scalability