首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >弹性搜索将geohash_grid键转换为lon

弹性搜索将geohash_grid键转换为lon
EN

Stack Overflow用户
提问于 2016-04-24 07:59:05
回答 2查看 1.5K关注 0票数 5

在elasticsearch中使用geohash_grid aggs返回以下结果:

代码语言:javascript
复制
"aggregations": {
  "Geo-hash": {
     "buckets": [
        {
           "key": "gcw05r6xz7cb",
           "doc_count": 305
        },
        {
           "key": "gcw2hzkpf7b8",
           "doc_count": 12
        }
     ]
  }

}

1)键代表细胞的中心点;

2)如何将这个键转换成lon?-我发现有一些插件是为了避免使用插件(不支持所有版本,需要维护等等)。直接从elasticsearch查询地理池塘?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-03 07:50:54

正如我在问题中所描述的那样,唯一的方法就是使用多个插件中的一个,即就像这个

任何方式,如果你的数据集和基数不是太大,你可以使用顶部的aggs作为子aggs,然后从文档中提取地理点字段。这可能是非常昂贵的操作,在小数据集上明智地使用它:)

代码语言:javascript
复制
   {
  "size": 0, 
  "aggs": {
    "geo": {
      "geohash_grid": {
        "field": "locationField",
        "precision": 3
      }
      ,
  "aggs": {
    "NAME": {
      "top_hits": {
        "size": 1
      }
    }
  }
    }
  }
}
票数 1
EN

Stack Overflow用户

发布于 2016-06-30 04:37:08

回答你的问题:

  1. 键中的地哈希代表一个区域。有关geohashes:https://www.elastic.co/guide/en/elasticsearch/guide/current/geohashes.html的更多细节,请阅读以下内容
  2. 从本elasticsearch关于Geo散列网格聚合的文档的最后一节中,您需要一个库来将Geo散列转换为等效的边界框或中心点。https://www.elastic.co/guide/en/elasticsearch/guide/current/geohash-grid-agg.html#geohash-grid-agg

您可以探索Geo边界聚合来执行类似的工作,但我更喜欢在客户端进行转换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36820656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档