MongoDB的一些使用技巧


1. 用关联?还是内嵌文档?来存储记录 ------->看存储的数据是否经常修改

2. single query即确保想要的数据在一次查询中能够获取到

3. 如果collection的document是无边界的,尽量不使用内嵌文档

4. 对于复杂的collection(通常用于定期的存入数据),可以事先在资源空闲的时候先创建,
   并填入一些默认值,等要存储实际数据时,更新collection即可。【就是预留空间】

5. self-sufficient: fast and slow【重点考虑数据一致性的要求有多高】

6. 慎用$where,不得不用的时候,应该是其作用的文档集合尽可能的小

7. 重写"_id",注意其值的随机度,另外尽量避免用document作为"_id"的类型

8. DBref何时该用?无法确定引用物件类型的时候考虑使用

9. 索引可以优化查询,但当查询的数据量》=collection文档数量一半的时候,该考虑是否应该用索引。
(可以通过测 试验证使用索引时候的效率高还是不使用索引的时候效率高)
 
10. 合理的组织文档结构能提高mongodb的查询效率  

11. Loading JavaScript form file:  load(xx.js)

12. 是否应该考虑离线创建索引?备份索引只能通过备份数据文件的方式才能备份索引】?索引压缩?

13. 在mongodb中使用skip操作,要注意skip较大时候的处理【某些情况下可以使用反向排序】

14. 索引数据类型优化:int < ObjectID < String 【相同记录数量下,索引所占据的空间大小比较】

15. 选择正确的文件系统,应该选择分片空间快速的文件系统,尽量不要用ext3,用ext4或者xfs

16. 如果用的是默认的ObjectId,可以从ObjectId中获取insert的时间【ObjectId对象.getTime(),ObjectId对       象.getTimeSecond()】
   

转载于:https://my.oschina.net/u/248570/blog/1560347

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值