mongodb优化存储空间

事情起因

生产环境中mongo占用磁盘空间太大,将近60G。虽然目前系统还可以承受,但是按照当前系统数据产生的速度,很快就会占满磁盘,将会导致一系列问题。也考虑到借此优化下mongo的查询。

准备方案

  1. 将存储内容过多的collection,按照业务ID分为多个collection,每个collection存储一定量的数据。
  2. 删除一部分无用的数据。删除数据并不会使mongo的磁盘占用减少,如果想减少mongo的磁盘占用,需要把删除后的数据导出,再重新导入。
  3. 在mongo shell中运行

    1
    db.repairDatabase()

    repairDatabase是官方文档中认为唯一可以回收硬盘空间的方法。

执行过程

待更新