ElasticSearch:地理点聚类

Posted

技术标签:

【中文标题】ElasticSearch:地理点聚类【英文标题】:ElasticSearch: geo point clustering 【发布时间】:2020-03-02 08:35:47 【问题描述】:

我在 ElasticSearch 索引中有一些带有地理点的行。现在,我搜索所有行,例如在方圆5公里内。结果是一个列表,其中包含与查询匹配的所有点。

是否可以将结果聚集在 ElasticSearch 中以获取所有“热点”?已经找到了elasticsearch的geo centroid聚合功能,但不是我要找的东西。

我知道,可以使用 Mapbox 的 Supercluster 之类的库或类似的库来做到这一点。但是 ElasticSearch 有可能吗?请看两张图片。第二张图片显示了我想要得到的结果。干杯!

【问题讨论】:

【参考方案1】:

我没有使用它,但我认为您需要一个地理哈希网格聚合。见:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-geohashgrid-aggregation.html

您应该能够改变您的精度,它会返回包含文档数量的 geo_hash 存储桶。

【讨论】:

以上是关于ElasticSearch:地理点聚类的主要内容,如果未能解决你的问题,请参考以下文章

各向异性点聚类

阅读《基于转弯点聚类的航空飞行轨迹分析》笔记

ElasticSearch是什么?为什么快?倒排索引是什么?ElasticSearch的应用?

KMeans聚类

使用 Mahout 对一个点进行聚类

Fisher准则一维聚类