MongoDB 实战笔记
count 查询记录条数
db.users.find().count();
以下返回的不是 5,而是 user 表中所有的记录数量
db.users.find().skip(10).limit(5).count();
如果要返回限制之后的记录数量,要使用 count(true)或者 count(非 0)
db.users.find().skip(10).limit(5).count(true);
从第 3 条记录开始,返回 5 条记录(limit 3, 5)
db.users.find().skip(3).limit(5);
以年龄升序 asc
db.users.find().sort({age: 1});
以年龄降序 desc
db.users.find().sort({age: -1});
MongoDB 也是用游标来循环处理每一条结果数据,具体语法如
下:
> for( var c = db.t3.find(); c.hasNext(); ) {
... printjson( c.next());
... }
MongoDB 还有另一种方式来处理游标
> db.t3.find().forEach( function(u) { printjson(u); } );
MongoDB 同样支持存储过程。关于存储过程你需要知道的第一件事就是它是用 javascript 来
写的。也许这会让你很奇怪,为什么它用 javascript 来写,但实际上它会让你非常满意,
MongoDB 存储过程是存储在 db.system.js 表中的,我们想象一个简单的 sql 自定义函数如下:
function addNumbers( x , y ) {
return x + y;
}
下面我们将这个 sql 自定义函数转换为 MongoDB 的存储过程:
> db.system.js.save({_id:"addNumbers", value:function(x, y){ return x + y; }});
调用一下这个存储过程:
> db.eval('addNumbers(3, 4.2)');
7.2
db.eval()是一个比较奇怪的东西,我们可以将存储过程的逻辑直接在里面并同时调用,而无
需事先声明存储过程的逻辑。
> db.eval( function() { return 3+3; } );
6
1、logging
MongoDB 中日志机制的首选,MongoDB 没有使用日志文件,而是把日志事件存储在数
据库中。在一个没有索引的 capped collection 中插入对象的速度与在文件系统中记录日
志的速度相当。
2、cache
缓存一些对象在数据库中,比如计算出来的统计信息。这样的需要在 collection 上建立
一个索引,因为使用缓存往往是读比写多。
3、auto archiving
可以利用 capped collection 的 age-out 特性,省去了写 cron 脚本进行人工归档的工作
1、 为了发挥 capped collection 的最大性能,如果写比读多,最好不要在上面建索引,否则
插入速度从"log speed"降为"database speed"。
2、使用"nature ordering"可以有效地检索最近插入的元素,因为 capped collection 能够保证
自然排序就是插入时的顺序,类似于 log 文件上的 tail 操作。
删除MongoDB Windows服务
>mongod.exe --remove
(http://blog.csdn.net/xiaochunyong/article/details/7730841)
mongofiles put testfile
mongofiles list
db.fs.files.find()
{ "_id" : ObjectId("4fc60175c714c5d960fff76a"), "filename" : "testfile", "chunkSize" : 262144,
"uploadDate" : ISODate("2012-05-30T11:16:05.745Z"), "md5" :
"8addbeb77789ae6b2cb75deee30faf1a", "length" : 16 }
分享到:
相关推荐
MongoDB3.2实战笔记
mongodb group aggregate项目实战笔记 管道聚合 mongodb group按时间分组,用aggregate管道聚合 会比group的处理效率要高而且更灵活方便
MongoDB实战第二版笔记(9)第八章笔记 1、正确设置索引,MongoDB可以高效使用其硬件,并且快速服务查询。而错误索引导致查询减速、写减速、恶化硬件设备使用。【高效使用MongoDB为何要理解索引?】 2、索引...
深入浅出MongoDB应用实战开发视频教学,里面包含笔记和资料
MongoDB练习文件
2、mongoDB服务器的组件必须运行在采取小端存储的机器上。 3、磁盘性能重要的原因 高写入工作负载。当数据写入MongoDB时,服务器必须把数据写入磁盘,对于高并发写入的APP和慢速磁盘,写入操作会影响整个...
MongoDB是当前NoSQL数据库产品中最热门的一种。它在许多场景下可用于代替传统的关系型数据库或者键/值存储方式,MongoDB使用C++开发
李兴华java实战经典笔记
python笔记包括基础和实战+源码,物超所值。 目录: 01-Linux基础 02-Python基础第一部分 03-Python基础第二部分 04-Python基础第三部分 05-面向对象 06-MySQL 07-网络编程 08-多线程 09-MongoDB数据库 10-正则...
sparkML智能客户系统项目实战-全套笔记,详细记录学习过程.zip
百度云推送的实战-通知开锁 锁车之后的一系列操作(订单、消费、锁车,支付没有做) 骑行轨迹的保存(保存在mongodb中) 其他:logback,lombok,fastjson, 全局异常和高复用状态类封装、 利用mysql主键自增特性实现...
本文介绍了利用Docker和Kubernetes搭建一套具有冗余备份集合的MongoDB服务,从容器对CI和CD引发的改变入手,讨论了容器技术对MongoDB带来的挑战和机会,然后实战如何部署一套稳定的MongoDB服务,非常的干货~想尝试在...
原本我是使用 MongoDB 这类型的 NoSQL 数据库,MongoDB在 Nodejs 在 Mongoose 包的帮助下 JSON 的数据格式直接插入 MongoDB 中,对于一个前端开发工程师,使用起来非常舒服。但是没有办法,我是被逼的,从此入了一个...
原本我是使用 MongoDB 这类型的 NoSQL 数据库,MongoDB在 Nodejs 在 Mongoose 包的帮助下 JSON 的数据格式直接插入 MongoDB 中,对于一个前端开发工程师,使用起来非常舒服。但是没有办法,我是被逼的,从此入了一个...
MongoDB学习笔记.docx mybatis原理.docx MyBatis面试专题.docx MyBatis面试专题及答案.pdf Mybatis面试题(含答案).pdf MySQL性能优化的21个最佳实践.pdf mysql面试专题.docx MySQL面试题(含答案).pdf Netty面试...
docs:Java知识总结:MySQL实战45讲,多线程和JVM知识总结,, SpringBoot,SpringCloud,Storm系列,微信小程序开发,ELK,《 JAVA核心技术36讲笔记》,《深入理解JVM虚拟机笔记》 ,《高级MySQL笔记》,《数据结构...
mongodb mysql canal kindshard数据库中间件 mycat数据库中间件 mysql错误:Ignoring query to other database解决方法 php fusio hyperf laravel php扩展 swoole thinkphp yii2 python scrapy redis 应用实例 ...
包含前一级数据库及爬虫包含前一级分离和服务端渲染vue,react,koa2,mongodb开发中... pc预览地址 mobile预览地址 【内有福利】可扫码 服务端koa2系列 移动端vue系列 后台管理react系列 pc端vue系列 知识点 vue...
算法&数据结构计算机网络操作系统Python基础Python基础教程python学习手册(第四版)Python进阶Python cookbookFluent Pythonpython核心编程(第三版)Python编程导论(第二版)Python框架Flask web开发数据库MongoDB权威...