巨量数据下的 mongoose 查询
发布于 1 年前 作者 USERARSSASion 1659 次浏览 来自 问答

我现在是 mongoose.find({条件}).sort(time : -1).limit(1).exec() 但是当数据量起来了 find({}) 这一步应该是个优化的地方。 请问各位怎么处理大量数据下的查询呢。

9 回复

我这是查找这个条件最后一次出现的数据。解释一波

Schema.findOne({}, {}, { sort: { 'created_at' : -1 } }, function(err, post) { XXX });

索引优化,分库分表

巨量的时候就不要用limit了

@ycczkl findOne … 还用排序么??就一个数据

@o6875461 索引只是增快查询速度,数据大的话,找的数据多了就会 out of memory。

@nnliang 巨量 用limit 至少还能以点数据测试,不能使用 skip 吧。这个有数据大小限制。

统一回复了。 普查、管道操作、maprudece 都试过了。管道操作可以极大的减少查询的数据占的内存,要想查询巨量还是需要找到自己所需要的限制条件。限制不住就需要靠分几段查询了。skip limit

@USERARSSASion 哦哦 我记错了 是skip不是limit

回到顶部