mongodb 分页查询的方法及性能

http://blog.jobbole.com/80464/
大数据分页查询时直接使用关键key来分页,不使用Skip()函数,数据量达到千万级别的时候你就会怀疑程序是不是卡死了(坑只有自己爬过才知道)

不要轻易使用Skip来做查询,否则数据量大了就会导致性能急剧下降,这是因为Skip是一条一条的数过来的,多了自然就慢了。

这里直接贴一些简单的代码,详情参看原作者.
就是通过关键词查询语句来进行分页
PS:因为Skip是一条一条的数过来的,也是就时间是线性增长的

db.test.find({amount:{$gt:2399927}}).sort({"amount":1}).limit(10) 
为什么不使用_id为分页索引

1.对象的索引会改变的,改变情况如下:
http://blog.csdn.net/miyatang/article/details/22413569
2.也就是说你的数据库,仅仅是用来查询的话. _id 也是可以使用的

from bson.objectid import ObjectId
      _id = ObjectId('5982b6a539b66bb9d07a6128')

你可能感兴趣的:(mongodb 分页查询的方法及性能)