I have some tables which have an extremely high amount of update
activity on them.  I have changed autovacuum parameters (cost delay and
limit), and whereas before they would never be vacuumed and bloat they
are running fine.

However, as the platform scales, I am afraid I will reach the same
situation.

As a result, I have decided to partition the table and add to each
record a partition id, which can be used to route it to the correct
partition.

Presently, all of the records reside on what will ultimately become the
parent partition.

What would be the best way of moving the data to the pertinent
partitions?

I was thinking of copying the data to another table and then performing
a insert into partitionedtableparent select * from temporary table, and
then performing a delete from only partitionedtableparent.

Does this sound like a reasonable way of doing this?  Is there a more
efficient way of doing this?

 

 

Reply via email to