草庐IT

scanAndOrder

全部标签

mongodb - 为什么 MongoDB 在这里使用 scanAndOrder?

我在MongoDB中保存游戏文档。除其他外,文件还包含玩家姓名(name)、游戏结束时间(endMS)和游戏类型(type)。类型可以有五分之一的不同值。我需要搜索按游戏结束时间排序的玩家完成的所有游戏,以及按游戏结束时间排序的特定游戏类型的玩家完成的所有游戏。两个查询的例子是db.games.find({name:"Stefan",endMS:{$gt:0}}).sort({endMS:-1})和db.games.find({name:"Stefan",type:"bli",endMS:{$gt:0}}).sort({endMS:-1})你可以使用索引db.games.ensureI

mongodb - 删除 "scanAndOrder": true in my MongoDB query result

所以我在我的数据库中有一个包含以下shardkey的集合:{cl:"yyyy-mm",user_id:N}当我执行后续查询时db.collection.find({cl:"2012-03",user_id:{$in:users},_id:{"$lt":newObjectId('4f788b54204cfa4946000044')}}).sort({_id:-1}).limit(5).explain(true)它给了我这个结果:"clusteredType":"ParallelSort","shards":{"set1/hostname.com:27018":[{"cursor":"Bt