我有一个尚未升级的旧数据库(postgres 10.15)。一个有问题的表上有几个大索引,其中一些已损坏并需要重新索引。由于它不在版本 12+ 上,因此我无法同时重新索引表(这意味着我需要非并发地执行此操作,这需要表写入锁) - 所以我想知道如何对如何进行一些粗略的计算重新索引需要很长时间,所以我可以计划一些维护。我的大部分研究都以“只使用 pg_stat_progress_create_index!”(这在 10 中不可用)而告终,或者人们只是说要同时使用。
该表约为 200GB,索引为 7 个索引,每个索引为 14GB(根据 pg_relation_size)。为此任务,我可以在数据库上获得约 900M/s 的恒定读取速率。是否有一个简单的指标可以用来确定需要读取多少数据才能完全重新索引?