java - Solr 空间距离错误

标签 java solr lucene spatial geo

我正在尝试实现 solr 以使用空间搜索来查找存储在我的数据库中的点之间的距离。纬度/经度来自谷歌地图 API,我认为它可以在 Solr 中使用。这个假设是否正确?我问的原因是因为我得到了一些奇怪的距离结果:

示例 1

  • 起点:45.15,-93.85(纽约州布法罗 - 来自 solr 空间示例)
  • 位置:42.88,-78.8(纽约州布法罗 - 来自 google maps api)
  • 距离:1227.7522

示例 2

  • 起点:45.15,-93.85(纽约州布法罗 - 来自 solr 空间示例)
  • 位置:40.67,-73.9(纽约州布鲁克林 - 来自 google maps api)
  • 距离:1694.3356

公里或英里,距离很远。我不是地理/空间专家,所以任何关于可能发生的事情的提示都将不胜感激。如果您认为需要,我很乐意分享配置。

谢谢!

最佳答案

嘿,您为纽约州布法罗使用的坐标在 Solr 示例中是不正确的。这些是明尼苏达州布法罗的坐标。通过简单的 Google 搜索,纽约州布法罗可能更接近北纬 42.8864°,西经 78.8786°(42.88,-78.87),这就是您声称 Google Maps API 正在报告的内容。

关于java - Solr 空间距离错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10038111/

相关文章:

java - 从照片的 EXIF 数据中读取地理坐标

java - 将 Java 文件更改为存储过程

java - porcupineManager.stop() 和 .destroy() 不起作用

tomcat - solr 示例演示,无法确定将 java 文件夹放在哪里

php - 在 elasticaserch 中应用游标分页

java - ExtJs 不会将数据加载到表单

solr - 在 nutch 抓取的 solr 数据中建立索引时出错

MySQL 到 Solr 导入

java - 对多个搜索字段使用通用查询约定

java - 如何在SOLR中处理突出显示片段中的html标签