3MongoDB学习之固定集合

Posted 无谓的test

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3MongoDB学习之固定集合相关的知识,希望对你有一定的参考价值。

一、MongoDB固定集合概念
固定集合指的事先创建,并且大小固定的集合。即假设一个集合设置了固定为100,再添加一条文档的时候,会把最前面的文档剔除,永远只保留100条数据。
固定集合特性:固定集合很像环形队列,如果空间不足,醉枣的文档就会被删除,为新的文档腾出空间。一般来说,固定集合适用于任何想要自动淘汰过期属性的场景。
 
二、固定集合应用场景
比如日志文件,聊天记录,通话信息记录等需要保留最近某段时间内的应用场景,都会适用到MongoDB的固定集合。
当知道文档数量上限时,必须同时指定大小,淘汰机制是容量没有满足的时候会依据文档数量来工作,要是容量满了,淘汰机制会依据容量机制来淘汰。
 
三、如何适用固定集合
创建固定集合使用命令:
db.createCollection(name, { size : ..., capped : ..., max : ... } )
name    #表示集合名称
capped    #为true表示固定集合
size    #表示集合最大使用的大小,默认是K
max    #表示最大的文档数
 
1、创建一个固定集合
> db.createCollection("b3",{capped:true,size:1024,max:200})
 
2、对固定集合插入数据
> for (var i=1;i<199;i++){
... db.b3.insert({name:\'test\'+i,age:26})
... }
WriteResult({ "nInserted" : 1 })
 
3、查看集合
WriteResult({ "nInserted" : 1 })
> db.b3.find()
 #可以看到集合已经size就已经把文档剔除了
 
 
 
 
 
 

以上是关于3MongoDB学习之固定集合的主要内容,如果未能解决你的问题,请参考以下文章

youcans 的 OpenCV 例程200篇158. 阈值处理之固定阈值法

youcans 的 OpenCV 例程200篇159. 图像处理之固定阈值法

3mongoDB索引

Python之固定样式输出

滚动之固定顶部

UnityShader之固定管线着色器