我希望将数据存储在一个集合中,该集合在从数据库中自动删除之前,最多可保存约10000条记录,如一个10k记录的FIFO队列。
我一直关注上限集合,但除了最大记录数外,它们还需要集合的最大大小。现在,我真的不知道10k记录将占用多少。如果我设置一个不能容纳10k记录的大小,我会比我需要的更小。另一方面,如果我设置大小的上限,空间将被浪费,因为mongo预先分配空间。
我能做的是获取虚拟记录,但我不知道如何检查每个文档的大小。
是否有人知道一种方法可以仅根据我馆藏中的文件数设定上限?立即使用mongo上的最新版本(v 3.6.3)
答案 0 :(得分:1)
我亲自将10000个实际真实文档推入mongodb集合,然后在集合上调用stats
db.test.stats()
然后使用size属性:
> db.test.stats()
{
"ns" : "test.test",
"size" : 28609,
"count" : 1018,
"avgObjSize" : 28,
您可能还想添加一些填充,比如说该数字的10%:
cap col size = size * 1.1