MongoDB固定集合详解

小云云
Freigeben: 2023-03-17 19:42:02
Original
1716 Leute haben es durchsucht

一般情况下我们创建的集合是没有大小的,可以一直往里边添加文档,这种集合可以动态增长,MongoDB中还有一种集合叫做固定集合,这种集合的大小是固定的,我可以在创建的时候设置该集合中文档的数目,假设为100条,当集合中的文档数目达到100条时,如果再向集合中插入文档,则只会保留最新的100个文档,之前的文档则会被删除。一般像日志信息我们就可以使用固定集合,其他一些需要定期删除的数据也可以使用固定集合,本文我们就来看看这个固定集合的使用。

本文就和大家分享MongoDB固定集合详解。

1.Linux上安装MongoDB

2.MongoDB基本操作
3.MongoDB数据类型
4.MongoDB文档更新操作
5.MongoDB文档查询操作(一)
6.MongoDB文档查询操作(二)
7.MongoDB文档查询操作(三)
8.MongoDB查看执行计划
9.初识MongoDB中的索引
10.MongoDB中各种类型的索引


创建

固定集合的创建方式也比较简单,如下:

db.createCollection("my_collect",{capped:true,size:10000,max:100})
Nach dem Login kopieren

capped:true参数表示该集合为一个固定大小集合,size表示集合的大小,单位为kb,max则表示集合中文档的最大数量。我们这里相当于给了固定集合两个限制条件,只要有任意一个限制条件满足,集合都会开始将更古老的数据删除。固定集合一旦创建成功就不能再修改,想修改只能删除重来。此时我们可以尝试向集合中添加120条简单的数据,然后我们会发现最早的20条数据消失了。

除了直接创建一个固定集合外,我们也可以通过convertToCapped操作将一个普通集合转为一个固定集合,如下:

db.runCommand({convertToCapped:"sang_collect",size:10})
Nach dem Login kopieren

自然排序问题

自然排序就是按照文档在磁盘中的顺序来进行排列,在普通的集合中自然排序并没有多大的意义,因为文档的位置总是在变化,而固定集合中的文档是按照文档被插入的顺序保存的,自然顺序也就是文档的插入顺序,因此我们可以利用自然排序对文档从旧到新排序,如下:

db.sang_collect.find().sort({$natural:1})
Nach dem Login kopieren

也可以从新到旧排序:

db.sang_collect.find().sort({$natural:-1})
Nach dem Login kopieren

固定集合中的其他操作和普通集合基本一致,这里就不再赘述。

以上内容就是MongoDB固定集合详解,希望能帮助到大家。

MongoDB的技巧与注意事项汇总

laravel使用mongodb数据库的方法教程

如何提升MongoDB的安全性

Das obige ist der detaillierte Inhalt vonMongoDB固定集合详解. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!