我想知道totalIndexSize是否与集合中的文档数量成比例?
当我做一些测试时,我想说是的。
然而对于55个元素,它在294912停留了一段时间(然后我使用了db.collection.validate()
和db.collection.reIndex()
然后我得到了131072)
然而,当我做比率时,我有: - 101个元素2919.92 - 对于55个元素2383.12
我想尝试22个elemens,但现在我仍然得到131072
所以我有点失落。
事实上,我正在进行这些计算以估计(近似地)我需要的Ram
修改
我通过删除集合并重新创建它然后填充它来做一些测试。结果真的很奇怪。使用50,100和200个文档时,大小的结果是相同的。但是对于indexSize,即使在reIndex和validate之后,该值也是相同的。如果值没有进入垃圾收集器,我应该增加索引的大小,但这里保持不变....
"ns" : "hydb.profile",
"size" : 232504,
"count" : 200,
"avgObjSize" : 1162,
"storageSize" : 114688,
"nindexes" : 8,
"totalIndexSize" : 131072,
"indexSizes" : {
"_id_" : 16384,
"socialAuths.facebook.userID" : 16384,
"socialAuths.twitter.userID" : 16384,
"socialAuths.instagram.userID" : 16384,
"socialAuths.linkedin.userID" : 16384,
"socialAuths.github.userID" : 16384,
"socialAuths.google.userID" : 16384,
"email" : 16384
},
"ok" : 1
"size" : 116228,
"count" : 100,
"avgObjSize" : 1162,
"storageSize" : 61440,
"capped" : false,
"nindexes" : 8,
"totalIndexSize" : 131072,
"indexSizes" : {
"_id_" : 16384,
"socialAuths.facebook.userID" : 16384,
"socialAuths.twitter.userID" : 16384,
"socialAuths.instagram.userID" : 16384,
"socialAuths.linkedin.userID" : 16384,
"socialAuths.github.userID" : 16384,
"socialAuths.google.userID" : 16384,
"email" : 16384
},
"ok" : 1
"size" : 58099,
"count" : 50,
"avgObjSize" : 1161,
"storageSize" : 36864,
"capped" : false,
"nindexes" : 8,
"totalIndexSize" : 131072,
"indexSizes" : {
"_id_" : 16384,
"socialAuths.facebook.userID" : 16384,
"socialAuths.twitter.userID" : 16384,
"socialAuths.instagram.userID" : 16384,
"socialAuths.linkedin.userID" : 16384,
"socialAuths.github.userID" : 16384,
"socialAuths.google.userID" : 16384,
"email" : 16384
},
"ok" : 1
编辑2
拥有1000个个人资料
"size" : 1162172,
"count" : 1000,
"avgObjSize" : 1162,
"storageSize" : 573440,
"capped" : false,
"nindexes" : 8,
"totalIndexSize" : 176128,
"indexSizes" : {
"_id_" : 20480,
"socialAuths.facebook.userID" : 20480,
"socialAuths.twitter.userID" : 20480,
"socialAuths.instagram.userID" : 20480,
"socialAuths.linkedin.userID" : 20480,
"socialAuths.github.userID" : 20480,
"socialAuths.google.userID" : 20480,
"email" : 32768
},
"ok" : 1
此致