欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MongoDB的固定集合是什么?有什么用?

程序员文章站 2022-07-06 13:36:32
MongoDB 固定集合一、什么是固定集合?MongoDB中一般的集合是“动态创建”的,没有固定的大小,而是可以自动增长以容纳更多的数据的!可以存储不固定数量的文档。固定集合则是一种大小固定的集合,其大小在创建时就指定好了!当固定集合被“塞满”了之后,如果再向该固定集合里面插入文档,集合就会删除最老的文档并释放其空间来存放新插入的文档。需要注意的是:固定集合的数据被顺序地写入磁盘上的固定空间。固定集合不能被分片。固定集合被创建之后就不能改变了。创建时必须指定集合的大小。创建时还可以指定集...

MongoDB 固定集合

一、什么是固定集合?

MongoDB中一般的集合是“动态创建”的,没有固定的大小,而是可以自动增长以容纳更多的数据的!可以存储不固定数量的文档。

固定集合则是一种大小固定的集合,其大小在创建时就指定好了!当固定集合被“塞满”了之后,如果再向该固定集合里面插入文档,集合就会删除最老的文档并释放其空间来存放新插入的文档。

需要注意的是:

  1. 固定集合的数据被顺序地写入磁盘上的固定空间。
  2. 固定集合不能被分片。
  3. 固定集合被创建之后就不能改变了。
  4. 创建时必须指定集合的大小。
  5. 创建时还可以指定集合的最大文档数量。文档数量和集合大小两个限制,任何一个都需要同时满足。
    创建固定集合的代码:
//创建一个大小为1000000字节的固定集合
db.createCollection("<collection_name>",{"capped":true,"size":1000000});

//创建按一个大小为1000000字节,且最多存放100个文档的固定集合
db.createCollection("<collection_name>",{"capped":true,"size":1000000,"max":100})

二、固定集合与自然排序

对固定集合可以进行一种特殊的排序,叫自然排序。
自然排序返回的结果集中文档的顺序就是文档在磁盘上的顺序,也就是文档插入的顺序。

db.<collection>.find().sort({"$natural":-1}) //自然排序

三、固定集合的使用场景

固定集合最常用的作用就是用作日志记录!

本文地址:https://blog.csdn.net/qq_43222869/article/details/107665155