Re: Is there a limit to the number of partitions?

From: "Scott Marlowe" <scott(dot)marlowe(at)gmail(dot)com>
To: "Chris Hoover" <revoohc(at)gmail(dot)com>
Cc: "pgsql-admin(at)postgresql(dot)org Admin" <pgsql-admin(at)postgresql(dot)org>
Subject: Re: Is there a limit to the number of partitions?
Date: 2008-01-02 16:49:01
Message-ID: dcc563d10801020849q4ba299fcl59c75b102a53d76f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On Jan 2, 2008 10:40 AM, Chris Hoover <revoohc(at)gmail(dot)com> wrote:
> Is there a limit to the number of partitions a table can have in PostgreSQL?
>
> The reason I as is we are looking again at partitioning our databases with
> the possibility of doing the partitioning by year, month, or even day.
> However, we are required by HIPPA to keep 7 years of data, and we are
> planning on maintaining the data online in our databases. While I can't
> imagine year or month being a problem, 7 years of daily partitions would be
> 2555+ partitions per table. Can PostgreSQL handle this many partitions per
> table? Is that feasible, or would the cost of the rules become to expensive
> to be feasible?

That's a LOT of partitions, but it's definitely doable. However,
under no circumstances should you maintain that many partitions with
rules. Triggers are a much better choice (usually anyway) for large
numbers of partitions.

There are a few things you can do to alleviate the issue. One is to
put older data sets into larger partitions. Since they are accessed
less often, it's not as big of a deal if it takes an extra second to
get to the data in one. That was when a query runs, it doesn't have
to check the exclusion constraints of 2555 partition tables, just 40
or 50.

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Glyn Astill 2008-01-02 16:50:52 Re: Shutting down warm standby server? "
Previous Message Tom Lane 2008-01-02 16:44:24 Re: pg_dump and blobs