`
风过无声
  • 浏览: 92544 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

MongoDB 固定集合

 
阅读更多

1.定义

固定集合大小固定,必须事先创建,并且指定大小。

固定集合很像环形队列,如果空间不足,最早的文档就会被删除,为新的文档腾出空间,即自动淘汰最早的文档。

2.与普通集合的区别

1)不能删除文档

2)更新不能导致文档移动,即更新不能使得被更新的文档的存储空间变大

3)在默认情况下固定集合没有索引

3.特点

1)插入速度极快

2)按照插入顺序输出的查询速度极快

4.应用

1)日志

2)缓存少量的文档

3)任何想要自动淘汰过期属性的场景

5.创建

方法一:
db.createCollection("sys_log", {"capped": true, size: 100, max: 20});
sys_log: 集合名
capped: true,表示为固定集合
size: 集合字节大小
max: 文档数量的上限

方法二:
db.runCommand({"convertToCapped": "user", "size": 100});
convertToCapped: 要转化为固定集合的普通集合名
size: 集合字节大小

6.自然排序

自然顺序就是文档在磁盘上的顺序,即文档的插入顺序,自然排序就是与此相同的。

默认情况下,查询固定集合后就是按照插入顺序返回文档。即:

db.sys_log.find().sort({"$natural": 1});

也可以使用自然排序按照反向插入的顺序查询:

db.sys_log.find().sort({"$natural": -1});

注:非固定集合不能保证文档按照特定顺序存储,所以自然顺序的意义不大。

分享到:
评论

相关推荐

    MongoDB固定集合.pdf

    MongoDB的固定集合(Capped Collections)是一种特殊类型的集合,设计用于高效地存储有固定大小限制的数据,类似于一个循环缓冲区。固定集合的主要特点是它的大小是固定的,一旦达到上限,新的插入操作会覆盖最早的...

    MongoDB固定集合与管理工具.pdf

    在MongoDB中,固定集合(capped collection)是一种特殊类型的集合,具有固定大小和自动溢出处理机制。当固定集合达到其容量时,新插入的文档会替换最旧的文档,确保集合始终保持在设定的大小内。 1. 创建固定集合...

    MongoDB固定集合(capped collection)的知识小结

    MongoDB中有一种特殊类型的集合,值得我们特别留意,那就是固定集合(capped collection)。 固定集合可以声明collection的容量大小,其行为类似于循环队列。数据插入时,新文档会被插入到队列的末尾,如果队列已经...

    mongodb基本命令和实例

    集合可以通过 `db.createCollection(name, options)` 创建,其中`options`可以包含`size`(预分配空间)、`capped`(是否为固定大小的集合)和`max`(固定集合的最大文档数)等。 4. **删除集合**: `db.mycoll....

    MongoDB Java创建集合.pdf

    这段代码会创建一个上限为1MB且最多存储10000个文档的固定大小(capped)集合。 6. 关闭连接 当完成数据库操作后,别忘了关闭连接: ```java mongoClient.close(); ``` 7. 错误处理 在示例代码中,我们使用了异常...

    MongoDB基础入门之创建、删除集合操作

    例如,创建一个名为 `myCollection` 的固定集合,大小为 1024000 KB,最多允许 10000 个文档: ```javascript > use test switched to db test > db.createCollection("myCollection", {capped : true, autoIndexId...

    MongoDB文档与集合.pdf

    MongoDB 还提供了一种特殊的集合类型——“固定大小集合”(Capped Collections),用于实现高性能的队列功能。Capped Collections 有固定的存储容量,一旦达到上限,新插入的数据会替换最旧的数据,保持集合的大小...

    探索MongoDB的心脏:集合的奥秘

    2. **集合**:MongoDB 中的文档被组织在集合(Collections)中,类似于关系数据库中的表,但它们不需要有一个固定的模式。 3. **高性能**:MongoDB 提供高性能的数据持久化,特别是在处理大量的读写操作时。 4. **...

    辛星笔记之MongoDB教程

    固定集合是MongoDB中一个特殊的数据结构,用于满足某些特殊场景下的性能和存储需求。固定集合有着固定的大小限制,并且按照先进先出的顺序来添加和移除数据项。这种方式适合于记录日志、消息队列等场景。 MongoDB...

    真实可用的mongodb下周地址.txt

    视频目录: 01-mongodb文档型...07-固定集合 07-索引 08-备份与恢复 08-用户管理 09-mongoDB备份与恢复 09-安全和认证 10-replication复制集 10-主从复制 11-shard分片 11-分片 12-使用java操作mongodb

    Mongodb基础知识详解(值得珍藏).pdf

    MongoDB 不同于传统的关系型数据库,它采用面向集合的存储方式,支持无模式的数据模型,允许数据自由组织,这使得它特别适合处理大规模、结构不固定的数据。 在MongoDB中,数据是以文档的形式存储在集合中,文档是...

    MongoDB安装包

    相比于传统的行式数据库,MongoDB更加适合处理结构不固定或半结构化的数据。 在Linux环境下安装MongoDB 4.0.0,首先要确保系统满足其依赖条件,通常包括GCC编译器、curl库和其它必要的开发工具。接下来,可以通过...

    MongoDB_two_MongoDB_

    MongoDB采用NoSQL数据模型,它不同于传统的关系型数据库,如MySQL或Oracle,后者依赖于固定的表结构和行列式数据存储。MongoDB使用文档(BSON格式,一种JSON的扩展)作为数据存储单元,这些文档可以包含嵌套的数据...

    MongoDB;学习资料

    2. **集合(Collection)**:集合相当于关系型数据库中的表,但没有固定的模式。集合包含一个或多个文档,文档之间不必有相同的字段或结构。 3. **数据库(Database)**:数据库是MongoDB中存储数据的基本单位,...

    mongoDB部署.doc

    总结来说,MongoDB是一款灵活、高性能的NoSQL数据库,尤其适合处理结构不固定或半结构化的数据。在Linux上部署MongoDB涉及下载安装、配置环境变量、创建数据目录以及启动服务等步骤。Mongo Shell提供了一个便捷的...

    MongoDB简介与实践.pdf

    MongoDB使用的是集合(Collection)作为存储数据的容器,每个集合可以包含多个JSON格式的文档(Document)。它支持嵌套文档(Embedded Document)和分片(Shard),使用分片键(ShardKey)来分布数据。 9. MongoDB...

    MongoDB入门.pdf

    NoSQL系统通常不要求固定的表结构,通常具有高度的伸缩性和可用性。 - **MongoDB**:MongoDB是一款开源的、基于分布式文件存储的NoSQL数据库。它使用JSON-BSON格式来存储文档,这种灵活的数据模型非常适合存储复杂...

    MongoDB数据库管理工具

    2. 集合与文档:集合类似于关系数据库中的表,但没有固定的列结构。文档是集合中的基本单元,每个文档都是一组键值对。 3. 数据库:MongoDB中的数据库是一个命名的空间,用于存储集合。每个数据库都有一个唯一的...

Global site tag (gtag.js) - Google Analytics