【发布时间】:2012-05-26 22:30:54
【问题描述】:
我创建了一个简单的测试:
> db.t.count()
7852054
> db.t.find().skip( 1500000 ).limit(1)
{ "_id" : ObjectId("4fc078aa82618808f416e372"), "value" : 1500000 }
>
在大型集合中使用跳过和限制进行分页需要太长时间。
有没有更好的方法来做到这一点?
【问题讨论】:
-
我有另一个应用程序继续插入值: for i in xrange(0,99999999): db.t.insert( {"value":i} ) 所以跳过 1500000 需要超过 5 秒.在我停止插入应用程序之后。在一秒钟内跳过 1500000 个响应。但是跳过 12000010 个任务大约 5 秒。
-
你能解释一下你到底想做什么吗?
-
我想做分页。给出一个 pageno,并显示从 page_size*pageno 到 page_size*(pageno+1) 的记录
标签: mongodb