我使用NodeJS和MongoDB来处理我的数据。 我试图计算对应于具有几个标签之一的特定地理位置的数据。 在通过NodeJS和MongoDB处理我的查询后,我从MongoDB获得了这个响应:
2017-07-10T18:09:55.212 + 0200 I COMMAND [conn23]命令 tweetdb.coll命令:count {count:" coll",query:{lat:{$ gte: 70,$ lt:71},lon:{$ gte:67,$ lt:68},标签:{$ in:[" foo"," bar"]}}} planSummary:IXSCAN {lat:1,lon: 1,数据:1} keysExamined:1 docsExamined:0 numYields:0 reslen:44 locks:{Global:{acquireCount:{r:2}},数据库:{acquireCount: {r:1}},Collection:{acquireCount:{r:1}}} protocol:op_query 104MS
这告诉我,我的查询花了104毫秒才完成,对吧?但是,如果我在Mongo-Shell中执行它(具有相同的参数和相同的数据,并且同时运行其他查询)则需要0-1ms。 我确实碰巧在MongoDB上发出了很多请求,因为" numYields"等于0这不应该是一个问题吗? ESP。因为我通过Mongo-Shell发出的查询工作得非常好,即使我在其他查询仍在运行时解雇了它。
任何人都可以告诉我为什么会出现这个问题(甚至可以告诉我如何解决它)?如果需要进一步的信息,我会很乐意尽我所能提供。