MongoDB 地理空间设计的性能,$box 与 $near

问题描述 投票:0回答:1

首先我将讨论我的用例:

我想得到一点。有了这个点,我想找到大约最近 100 米的最近点。这不必非常准确,并且并非所有点都需要精确在 100 米之内(例如,110 米可以,或者 90 米也可以)。我主要关心的是性能。

我正在查看 $box(我相信现在称为 GeoJSON)与 $near。两者似乎都能满足我的需求,但对于我的用例来说,哪一个更快?对我来说, $near 命令似乎会更快,因为使用 GeoJSOn,我需要在每次请求时绘制相同的框,然后进行搜索,但另一方面,从我读到的有关地缘政治查询的内容来看,框形状的搜索速度比邻近度更快。

还有 haystack 索引,它似乎非常适合我想要的东西,但根据这个网站,我无法从我的 http 服务器使用它:

http://blog.mongolab.com/2014/08/a-primer-on-geospatial-data-and-mongodb/

This index is optimized for searches over small areas and is only usable through the geoSearch database command. We don’t discuss haystacking in this blog, but you can read more about it here.

对于这个用例来说,什么是性能良好的选择?

performance mongodb geospatial
1个回答
1
投票

一般来说,

box
搜索应该表现得更好,因为在
$near
搜索中,平方根(参见毕达哥拉斯定理)应该整体计算,效率较低

© www.soinside.com 2019 - 2024. All rights reserved.