一般情况下我们创建的集合是没有大小的,可以一直往里边添加文档,这种集合可以动态增长,MongoDB中还有一种集合叫做固定集合,这种集合的大小是固定的,我可以在创建的时候设置该集合中文档的数目,假设为100条,当集合中的文档数目达到100条时,如果再向集合中插入文档,则只会保留最新的100个文档,之前的文档则会被删除。
一般像日志信息我们就可以使用固定集合,其他一些需要定期删除的数据也可以使用固定集合,本文我们就来看看这个固定集合的使用。
示例:
db.createCollection("my_collect",{capped:true,size:10000,max:100})
参数解析:
my_collect
:集合名称capped:true
:表示该集合为一个固定大小集合size
:集合的大小,单位为kbmax
:max则表示集合中文档的最大数量我们这里相当于给了固定集合两个限制条件,只要有任意一个限制条件满足,集合都会开始将更古老的数据删除。固定集合一旦创建成功就不能再修改,想修改只能删除重来
将一个普通集合变成一个固定集合:
db.runCommand({convertToCapped:"sang_collect",size:10})
自然排序就是按照文档在磁盘中的顺序来进行排列,在普通集合中是没有太大意义的,因为文档的位置是一直在变化的,而固定集合中的文档是按照文档被插入的顺序保存的,自然顺序也就是文档的插入顺序
旧到新排序:
db.sang_collect.find().sort({$natural:1})
新到旧排序:
db.sang_collect.find().sort({$natural:-1})
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_43296313/article/details/123269290
内容来源于网络,如有侵权,请联系作者删除!