通过群集实现的性能改进给我留下了深刻的印象,但是花费的时间却没有。
我知道如果集群后更改了表或分区,则需要重建集群,但是除非我记下上次集群表的时间,否则如何知道何时需要再次进行集群? / p>
我可以使用此查询告诉我哪些表具有一个或多个聚集索引
SELECT *
FROM pg_class c
JOIN pg_index i ON i.indrelid = c.oid
WHERE relkind = 'r' AND relhasindex AND i.indisclustered
我的问题是
我已经注意到,重建聚簇索引所花的时间与首先重建聚簇索引所花费的时间一样长(即使在此期间未触及表的情况下)。因此,除非我知道表需要它,否则我希望避免重新聚集。
为清楚起见进行更新(我希望如此)
如果我使用此命令。...
CLUSTER tableA USING tableA_idx1;