mongodb GEO2D 指数 - 公里?

mongodb GEO2D Index - kilometers?

我的数据库中有一个地理空间索引。 MongoDB's documentation 表示 $near 运算符采用以米为单位的参数来查找匹配项。例如:

db.data.find({'coordinates': SON([('$near', [20.450550042732765, 80.52327036857605]), ('$maxDistance', 100)])}).count()

应该 return 在该位置的 100 米范围内匹配。但是 returned 太多了,大约有 3,000 个。当我将查询重写为

db.data.find({'coordinates': SON([('$near', [20.450550042732765, 80.52327036857605]), ('$maxDistance', 1)])}).count()  

我收到了 364 个结果。我不认为我的数据库在我查询的点的 1 米半径范围内有 364 个匹配项。最后,如果我查询

db.data.find({'coordinates': SON([('$near', [20.450550042732765, 80.52327036857605]), ('$maxDistance', .1)])}).count()

我收到了 330 场比赛。那个点10厘米以内肯定没有330个结果。

我认为 mongodb 将距离解释为公里,而不是米。任何人都可以确认或解释发生了什么事吗?

如果您使用的是遗留的 2d 索引,并且看起来这就是您正在做的事情,那么根据您链接到的文档,$maxDistance 以弧度为单位。