查找距离纬度/长度对的给定距离内的所有纬度/长度对

时间:2013-06-10 18:04:36

标签: database algorithm distance haversine

我有一个拥有数百万纬度/长对的数据库。我想实现一个函数来收集给定纬度/长度对的指定距离内的所有纬度/长度对。有没有比通过迭代数据库中的每一对并计算该对与给定对之间的距离更好的方法?如果我能避免这样做,我想避免蛮力!

我想补充一点,我将永远不会搜索距离给定纬度/长度对超过1英里的纬度/长距离。

2 个答案:

答案 0 :(得分:2)

许多数据库直接支持空间类型的存储,并包括空间查询。这将为您正确处理距离计算 ,并提供更有效的信息提取方式。

例如,请参阅:

答案 1 :(得分:0)

您可以做的是事先对数据库进行集群。在这种情况下,您可以将数据库划分为3英里的集群。然后,当您进行搜索时,您只需要比较同一群集中的点。