我最近一直在使用mongodb,我发现它占用了很多空间。
例如,在其db目录/ var / lib / mongodb /中,如果我输入“du -sh”,则结果为417M。问题是数据库中只有很少的条目,我不知道如何占用400M的空间。这是正常的吗?或者我做错了什么?
答案 0 :(得分:2)
如果空间有问题,您可以启动一些选项,这样文件的预分配就不会比您的数据大。这会降低性能,因为数据在磁盘上不会是连续的,并且在插入/更新数据时需要分配。通常,当删除数据时,空间不会释放到文件系统,但分配文件中的空间将由mongodb重用。
有关详细信息,请参阅此页面:http://www.mongodb.org/display/DOCS/Excessive+Disk+Space
答案 1 :(得分:1)
数据库通常会自动扩展空间,但在不再需要时不会返回。这可能发生在测试或运行查询期间。同样,如果你有索引或使用map-reduce创建聚合,他们需要去“你的”数据旁边的某个地方。
必须手动运行特殊工具才能回收空间。查看repair database功能。
运行它,看看清洁后仍然使用了多少。