Thread: Best way to handle "read only" paritions

Best way to handle "read only" paritions

From
Dave Johansen
Date:
We're using a time-based partitioning scheme for our data and so partitions become "read only" once the time covered by it has passed. We've been CLUSTERing those partitions but here's some questions I have:
Should we set the fill factor of the indexes from the default of 90 to 100?
Should we do anything with xids and freeze age?
Anything else?
Thanks,
Dave

Re: Best way to handle "read only" paritions

From
Peter Eisentraut
Date:
On 04/29/2016 12:46 PM, Dave Johansen wrote:
> We're using a time-based partitioning scheme for our data and so
> partitions become "read only" once the time covered by it has passed.
> We've been CLUSTERing those partitions but here's some questions I have:
> Should we set the fill factor of the indexes from the default of 90 to 100?
> Should we do anything with xids and freeze age?

If you are already spending the effort to cluster the completed
partitions manually, you might as well also VACUUM FREEZE them manually.
 Otherwise, this will happen eventually via autovacuum, so you shouldn't
need to worry about it unless you have particular problems with vacuum
keeping up or finishing.

Setting the index fill factor is a reasonable thought, but if you're
never going to change the old partitions again, the new fill factor will
never be applied.  But it might still be worthwhile if you expect
occasional changes on old partitions.

--
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


Re: Best way to handle "read only" paritions

From
Dave Johansen
Date:
On Fri, Apr 29, 2016 at 7:15 PM, Peter Eisentraut <peter.eisentraut@2ndquadrant.com> wrote:
On 04/29/2016 12:46 PM, Dave Johansen wrote:
> We're using a time-based partitioning scheme for our data and so
> partitions become "read only" once the time covered by it has passed.
> We've been CLUSTERing those partitions but here's some questions I have:
> Should we set the fill factor of the indexes from the default of 90 to 100?
> Should we do anything with xids and freeze age?

If you are already spending the effort to cluster the completed
partitions manually, you might as well also VACUUM FREEZE them manually.
 Otherwise, this will happen eventually via autovacuum, so you shouldn't
need to worry about it unless you have particular problems with vacuum
keeping up or finishing.

Setting the index fill factor is a reasonable thought, but if you're
never going to change the old partitions again, the new fill factor will
never be applied.  But it might still be worthwhile if you expect
occasional changes on old partitions.

Would setting the fill factor on the indexes before the CLUSTER do anything?