我有一个文档集合,其中存储了一组数字。该集合每10秒钟补充一次新文档。每天我运行一个处理这个数组的脚本,并在文档中只留下一个数字。经过3个月的数据收集后,我想释放磁盘空间。以下是Robomongo收集的统计信息:
{
"ns" : "orderbook",
"count" : 5363208,
"size" : 844457120,
"avgObjSize" : 157,
"storageSize" : 2795139072.0,
"capped" : false,
"wiredTiger" : {
"metadata" : {
"formatVersion" : 1
}
}
"nindexes" : 2,
"totalIndexSize" : 144482304,
"indexSizes" : {
"_id_" : 90615808,
"date_1" : 53866496
}
}
正如您所看到的,storageSize远大于大小。我希望命令compact
将释放磁盘空间。
我在mongo shell中做了什么:
use trading
db.runCommand({compact:'orderbook', force: true})
答案是
{“ok”:1}
日志来自/var/log/mongodb/mongod.log:
2016-12-26T11:19:55.468 + 0300 I COMMAND [conn7] compact trading.orderbook begin,options:paddingMode:NONE validateDocuments:1
2016-12-26T11:19:55.562 + 0300 I COMMAND [conn7] compact trading.orderbook end
什么都没发生。 storageSize具有相同的值。
有什么想法吗?我做错了什么?