mongo tips

本文介绍了MongoDB的一些实用技巧,包括如何通过特定操作提高写效率和存储利用率,以及如何利用命令释放内存。此外还探讨了MongoDB不适合的场景,并推荐了针对不同应用场景更适合的NoSQL数据库。
mongodb无法控制数据写入磁盘的顺序,这样将导致mongodb无法实现writeahead日志的特性,需要实现另外一种存储引擎。
删除一个节点最安全的方式是shutdown,然后remove掉。
一个mongodb的技巧,当mongodb服务器启动时,将所有数据文件copy到/dev/null中,相当于做了一次缓存。
pmap $pid用于查询内存使用情况,可用 -x 和 -q 选项。
释放 mongodb占用的内存 :
use  admin
db.runCommand({"closeAllDatabases" : 1})
BSON中把域长度放在头部,从而可以读感兴趣的字段,所以技巧是将长度可能变化的字段尽量命名靠后,这样更新时不需要移动大量数据。
这个导致写效率及存储的浪费,可以通过db.foo.stats().padingFactor看到。
repair可以让paddingFactor恢复到1。
如果构建一个Lotus Notes的应用,推荐使用couchDB,主要是由于它的MVC机制(Multi Version Concurrency Control)。
高性能存储服务,推荐使用mongodb,用于构建其它存储层之上的cache。
mongodb并没有一个基于统计的查询优化器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值