示例代码

1. 初始数据

> db.snapshot_test.find()
{ "_id" : ObjectId("560ba37c694895b2de42254d"), "name" : "lxy" }
{ "_id" : ObjectId("560ba381694895b2de42254e"), "name" : "zyh" }
{ "_id" : ObjectId("560ba38a694895b2de422550"), "name" : "zjj" }
{ "_id" : ObjectId("560feb75f31b120ca7308011"), "name" : "yhl" }

2. 给name=zjj的行添加age字段,增加行占用的空间

> db.snapshot_test.update({name:"zjj"},{$set:{name:"zjj",age:}})

3. 返回查询

> db.snapshot_test.find()
{ "_id" : ObjectId("560ba37c694895b2de42254d"), "name" : "lxy" }
{ "_id" : ObjectId("560ba381694895b2de42254e"), "name" : "zyh" }
{ "_id" : ObjectId("560feb75f31b120ca7308011"), "name" : "yhl" }
{ "_id" : ObjectId("560ba38a694895b2de422550"), "name" : "zjj", "age" : }

因为第三行的占用空间增大,mongdb会重新给第三条记录分配内存空间,并添加到集合的尾部

4. 快照查询结果

> db.snapshot_test.find().snapshot()
{ "_id" : ObjectId("560ba37c694895b2de42254d"), "name" : "lxy" }
{ "_id" : ObjectId("560ba381694895b2de42254e"), "name" : "zyh" }
{ "_id" : ObjectId("560ba38a694895b2de422550"), "name" : "zjj", "age" : }
{ "_id" : ObjectId("560feb75f31b120ca7308011"), "name" : "yhl" }

从返回的结果可以看出,第三行记录的顺序变回和修改空间大小之前的位置

mongodb游标快照的更多相关文章

  1. mongodb游标的使用

    1.插入数据 ;i<;i++){ db.shop.insert({_id:i+,name:+i}) } 2.查看数据数 db.shop.find().count() 3.获取游标.判断是否还存在 ...

  2. MongoDB游标操作(4)

    游标是什么? 通俗的说,游标不是查询结果,而是查询的返回资源,或者接口. 通过这个接口,你可以逐条读取. 声明游标: var cursor =  db.collectioName.find(query ...

  3. 【翻译】MongoDB指南/CRUD操作(三)

    [原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近 ...

  4. mongodb 修改数据结构的一个例子以及小梳理

    mongodb的存储结构是灵活可变的,但是,并不意味着我们就肆意地使用不规则的文档结构.不规则的文档结构对于开发和后期的维护都是一个灾难.所以,还是要有一个约定的格式. 但是,由于前期设计的不周详和其 ...

  5. mongodb3.2系统性学习——5、游标 模糊查询 findAndModify函数

    1首先介绍查询结果 返回的过程: 进行查询的时候mongodb 并不是一次哪个返回结果集合的所有文档,而是以多条文档的形式分批返回查询的结果,返回文档到内存中. 好处: 减少了客户端与服务器端的查询负 ...

  6. mongoDB入门必读(概念与实战并重)

    一.概述 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写.旨在为WEB应用提供可护展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是 ...

  7. MongoDB入门必读(概念与实战并重)

    MongoDB入门必读(概念与实战并重) 一.概述 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写.旨在为WEB应用提供可护展的高性能数据存储解决方案. MongoDB是一个 ...

  8. MongoDB整理笔记のCRUD

    添加 下面我们来建立一个test 的集合并写入一些数据.建立两个对象j 和t , 并保存到集合中去.在例子里 “>” 来表示是 shell 输入提示符    > j = { name : ...

  9. 【翻译】MongoDB指南/CRUD操作(四)

    [原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选 ...

随机推荐

  1. 10.PoolArena

    PoolArena PoolArena成员介绍 PoolChunkList PoolChunkList实例化 PoolChunkList添加PoolChunk PoolChunkList移动PoolC ...

  2. Intellij IDEA中mybatis-generator自动生成

    一.在maven工程中的resource中创建generatorConfig.xml 二.配置generatorConfig.xml: <?xml version="1.0" ...

  3. ubuntu16.04设置apt 阿里源

    sudo gedit /etc/apt/sources.listdeb http://mirrors.aliyun.com/ubuntu/ trusty main restricted univers ...

  4. Java基础的坑

    仍会出现NPE 需要改成

  5. (一)Thread的run() 和 start() 方法

    Java多线程在实际开发中会遇到很多问题,对于这种争抢CPU时间片段的选手,我们或许有很多困惑,捉摸不透.即便如此,它也是可以被我们控制的. 最近在看Java多线程的书籍,里面有好多我曾经不怎么注意的 ...

  6. 基础篇四:Ngnix安装

    然后直接 yum  install nginx 安装nginx

  7. day15-接口类

    # 一.接口类的作用是规范它的子类,跟后面学习的接口没关系. from abc import abstractmethod,ABCMeta class Pay(metaclass=ABCMeta): ...

  8. python语法基础-异常操作-长期维护

    ###############    python-异常的操作  ############### # 异常:python解释器遇到一个错误,会停止程序的执行,并且提示错误信息,这就是异常, # 抛出异 ...

  9. iOS 后台任务

    首先开启后台任务 使用设置后台任务触发的时机 application.setMinimumBackgroundFetchInterval(UIApplication.backgroundFetchIn ...

  10. iOS燃烧动画、3D视图框架、天气动画、立体相册、微信朋友圈小视频等源码

    iOS精选源码 iOS天气动画,包括太阳,云,雨,雷暴,雪动画. 较为美观的多级展开列表 3D立体相册,可以旋转的立方体 一个仪表盘Demo YGDashboardView 一个基于UIScrollV ...