是否应定期压缩上限集合或具有 TTL 索引的集合



我们有一个写入繁重的工作流程,它使用mongodb处理。我们经常删除大部分数据。因为mongodb不会真正删除数据,除非你调用compact操作,我们有时会面临磁盘内存问题。

所以我的问题如下 - 如果我使用 TTL 索引或上限集合 - 我仍然需要调用"紧凑"操作来真正清理空间,或者它会自动处理?

对于有上限的集合,紧凑是没有意义的,因为集合是固定大小的。还要考虑到自然顺序,有上限集合中的文档不会移动,没有填充,也不会增加大小(实际上,文档可能增长的此类操作将失败),因此没有碎片。

对于带有TTL索引的集合,没问题。事实上,在此类集合中可能会有更多的碎片。

最新更新