ElasticSearch distanceInKm返回错误的距离

时间:2012-04-03 16:19:57

标签: elasticsearch

我已经实现了一个返回距离的脚本字段Return distance in elasticsearch results?

红宝石:

{
  script_fields: {
    distance: {
      script: "doc['#{source_field}'].distanceInKm(#{lat}, #{lng})"
    }
  }
}

但是返回的距离不正确。如果该点接近,则距离更正确,但随着距离越来越远,它变得越来越不正确。

似乎无法弄清楚我做错了什么。

1 个答案:

答案 0 :(得分:8)

distanceInKm()计算距离作为平面上的点,这是快速但不是很准确。请尝试使用arcDistanceInKm()。