MongoDB的一些使用技巧


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

2. single query即确保想要的数据在一次查询中可以获取到优化

3. 若是collection的document是无边界的,尽可能不使用内嵌文档spa

4. 对于复杂的collection(一般用于按期的存入数据),能够事先在资源空闲的时候先建立,
   并填入一些默认值,等要存储实际数据时,更新collection便可。【就是预留空间】orm

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

6. 慎用$where,不得不用的时候,应该是其做用的文档集合尽量的小排序

7. 重写"_id",注意其值的随机度,另外尽可能避免用document做为"_id"的类型索引

8. DBref什么时候该用?没法肯定引用物件类型的时候考虑使用ip

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

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()】    

相关文章
相关标签/搜索