mongodb skip500w 的数据超时

2016-09-15 15:23:55 +08:00
 audestick

如题

collection.find({}, config.fields).skip(i * config.batch_size + 5840000 ).limit(config.batch_size).toArray

文档中没有递增的,可以区分所有数据的字段,不然可以 where+limit 做分页

同志们怎么解决这个问题?

2140 次点击
所在节点    程序员
1 条回复
gouchaoer
2016-09-15 18:02:23 +08:00
诀窍就是插入数据的时候用 count (*)的结果作为自增字段并且加上索引。。。。因为 mongo 的 count (*)复杂度为常数,自增字段可能有重复但是不影响最后遍历数据的时候用索引的区间查找

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/306455

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX