ElasticSearch QueryParsingException无法找到geo_point字段

时间:2014-05-12 14:48:29

标签: elasticsearch geospatial

尝试按如下方式构建搜索:

{
  "query": {
    "filtered": {
      "query": {
        "match_all": {}
      },
      "filter": {
        "geo_distance": {
          "distance": "50km",
          "coordinates": {
            "lat": 52.5234051,
            "lon": 4.113999
          }
        }
      }
    }
  }
}

其中坐标的类型为' geo_point'

但是当我尝试运行此查询时,elasticsearch.log会弹出一个错误: [locations]无法找到geo_point字段[coordinates]

修改

这是/ locations / location / _mapping:

的一部分
{
  "locations": {
  "mappings": {
  "location": {
  "properties": {
    ...
    "coordinates": {
      "properties": {
        "lat": {
          "type": "string"
         },
        "lon": {
          "type": "string"
        }
      }
    },
   ...
 }
}

这里有什么问题吗?

1 个答案:

答案 0 :(得分:9)

问题在于map.you需要在映射中使用geo_point .. refer this