地理空间分析

编辑

您是否知道 Elasticsearch 具有地理空间功能?Elasticsearch 和地理的渊源可以追溯到 2010 年。自那时以来,发生了许多变化,如今 Elasticsearch 提供了强大的地理空间功能,速度快,并且所有功能都使用自动扩展的堆栈。

不确定从哪里开始使用 Elasticsearch 和地理位置?那么,您来对地方了。

地理空间映射

编辑

Elasticsearch 支持两种类型的地理数据:geo_point 字段,支持经纬度对;以及 geo_shape 字段,支持点、线、圆、多边形、多重多边形等。使用 显式映射来索引地理数据字段。

有一个包含经纬度对但没有 geo_point 映射的索引?使用 运行时字段来创建一个 geo_point 字段,而无需重新索引。

摄取

编辑

数据通常是混乱和不完整的。摄取管道允许您在索引之前清理、转换和增强数据。

查询

编辑

地理查询回答位置驱动的问题。查找与您的查询几何图形相交、位于内部、被包含或不相交的文档。将地理空间查询与全文搜索查询结合使用,以获得无与伦比的搜索体验。例如,“显示我所有住在我们新健身房 5 英里范围内、去年加入并在个人资料中提到跑步的订阅者”。

ES|QL

编辑

ES|QL 支持 地理空间搜索函数,可以高效地搜索索引中与查询几何图形相交、位于内部、被包含或不相交的文档。此外,ST_DISTANCE 函数计算两点之间的距离。

聚合

编辑

聚合将您的数据汇总为指标、统计信息或其他分析。使用 桶聚合根据字段值、范围或其他条件将文档分组到桶(也称为箱)中。然后,使用 指标聚合计算每个桶中字段值的指标,例如总和或平均值。比较不同桶的指标,以从数据中获得见解。

地理空间桶聚合

  • 地理距离聚合评估每个 geo_point 位置到原点的距离,并根据范围确定其所属的桶(如果文档与原点之间的距离在桶的距离范围内,则该文档属于该桶)。
  • Geohash 网格聚合将 geo_point 和 geo_shape 值分组到表示网格的桶中。
  • Geohex 网格聚合将 geo_point 和 geo_shape 值分组到表示 H3 六边形单元格的桶中。
  • Geotile 网格聚合将 geo_point 和 geo_shape 值分组到表示网格的桶中。每个单元格对应于许多在线地图站点使用的 地图瓦片

地理空间指标聚合

  • 地理边界聚合计算包含 Geopoint 或 Geoshape 字段的所有值的地理边界框。
  • 地理质心聚合计算地理字段的所有坐标值的加权质心。
  • 地理线聚合将桶内的所有 geo_point 值聚合到一个 LineString 中,并按所选的排序字段排序。使用地理线聚合创建 车辆轨迹

组合聚合以执行复杂的地理空间分析。例如,要计算每次航班的最新 GPS 轨迹,请使用 词项聚合将文档按飞机分组到桶中。然后使用地理线聚合来计算每架飞机的轨迹。在另一个示例中,使用 geotile 网格聚合将文档分组到网格中。然后使用地理质心聚合来查找每个网格单元的加权质心。

集成

编辑

使用 矢量切片搜索 API在现有 GIS 基础架构中使用 Elasticsearch 地理数据。

可视化

编辑

使用 Kibana 可视化地理数据。将您的地图添加到 仪表板,以从各个角度查看您的数据。

此仪表板显示了 Cumbre Vieja 火山喷发的影响。

Kibana dashboard showing Cumbre Vieja eruption from Aug 31 2021 to Dec 14 2021

机器学习

编辑

利用机器学习为您服务,并使用异常检测查找应该突出的数据。查找在不寻常位置发生的信用卡交易或具有不寻常来源位置的网络请求。基于位置的异常检测使查找、探索和比较异常及其典型位置变得容易。

警报

编辑

让您的位置数据通过 地理警报来驱动见解和行动。通常称为地理围栏,跟踪移动物体进出边界,以通过常见的业务系统(电子邮件、Slack、Teams、PagerDuty 等)接收通知。

有兴趣了解更多信息?请按照 分步说明设置跟踪容器警报以监视移动车辆。