【Elasticsearch】geotile grid聚合

embedded/2025/2/8 20:01:18/

`geotile_grid`聚合是 Elasticsearch 中一种用于处理地理数据的多桶聚合方式,它将`geo_point`和`geo_shape`类型的值分组到表示网格的桶中。以下是关于`geotile_grid`聚合的详细说明:


基本概念

• 网格划分:`geotile_grid`聚合将地理数据划分为一个稀疏网格,每个网格单元(桶)对应一个地图瓦片。这些单元格仅包含有匹配数据的部分。

• 瓦片标识:每个单元格使用`{zoom}/{x}/{y}`的格式标记,其中`zoom`表示用户指定的精度。精度越高,单元格覆盖的地理范围越小。

• 精度范围:精度值可以在 0 到 29 之间,精度为 29 时,单元格覆盖的面积小于 10 厘米×10 厘米。


使用场景

• 地理数据可视化:`geotile_grid`聚合非常适合用于地理数据的可视化,例如在地图上显示数据分布情况。它可以直接与在线地图服务的瓦片系统集成。

• 高效数据处理:通过将地理数据划分为瓦片,可以高效地处理和加载大量地理数据,同时支持不同缩放级别的数据展示。


参数说明

• `field`:指定包含地理点或地理形状值的字段,必须显式映射为`geo_point`或`geo_shape`类型。

• `precision`:指定网格的精度,值越大,网格单元越小,精度越高。默认值为 7。

• `bounds`:可选参数,用于限制聚合的地理范围。接受与`geo_bounding_box`查询相同的边界框格式。

• `size`:指定返回的最大桶数,默认为 10,000。

• `shard_size`:从每个分片返回的桶数,用于优化聚合结果的准确性。


示例
以下是一个简单的`geotile_grid`聚合示例,用于对`location`字段进行聚合:

```json
POST /example_index/_search?size=0
{
  "aggregations": {
    "grid-aggregation": {
      "geotile_grid": {
        "field": "location",
        "precision": 8
      }
    }
  }
}
```

该查询将返回一个网格聚合结果,其中每个桶包含具有匹配数据的地理点或形状。


注意事项

• 性能优化:高精度请求可能会消耗大量内存并返回大量结果,建议在请求高精度数据之前,使用`geo_bounding_box`过滤数据。

• 数据类型支持:`geotile_grid`聚合支持对`geo_point`和`geo_shape`字段进行聚合。

通过`geotile_grid`聚合,用户可以高效地对地理数据进行分组和分析,并将其与地图服务集成,以实现地理数据的可视化和交互。

 


http://www.ppmy.cn/embedded/160611.html

相关文章

【mysql】数据库字段设计原则

本文将分享17个关键字段设计原则,这些经验可规避80%的数据库设计缺陷,涵盖性能、扩展性、可维护性等核心维度,附具体场景示例: 一、数据类型选择:避免“隐形成本杀手” 1. 整数类型精确匹配 坑:滥用BIGIN…

Llama最新开源大模型Llama3.1

Meta公司于2024年7月23日发布了最新的开源大模型Llama 3.1,这是其在大语言模型领域的重要进展。以下是关于Llama 3.1的详细介绍: 参数规模与训练数据 Llama 3.1拥有4050亿(405B)参数,是目前开源领域中参数规模最大的…

为多个GitHub账户配置SSH密钥

背景 当需要同时使用多个GitHub账户(例如工作和个人账户)时,默认的SSH配置可能导致冲突。本文介绍如何通过生成不同的SSH密钥对并配置SSH客户端来管理多个账户。 操作步骤 生成SSH密钥对 为每个GitHub账户生成独立的密钥对,并指…

DeePseek结合PS!批量处理图片的方法教程

​ ​ 今天我们来聊聊如何利用deepseek和Photoshop(PS)实现图片的批量处理。 传统上,批量修改图片尺寸、分辨率等任务往往需要编写脚本或手动处理,而现在有了AI的辅助,我们可以轻松生成PS脚本,实现自动化处…

电子电器架构 --- 电子电气架构设计要求与发展方向

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 简单,单纯,喜欢独处,独来独往,不易合同频过着接地气的生活,除了生存温饱问题之外,没有什么过多的欲望,表面看起来很高冷,内心热情,如果你身…

Centos挂载镜像制作本地yum源,并补装图形界面

内网环境centos7.9安装图形页面内网环境制作本地yum源 上传镜像到服务器目录 创建目录并挂载镜像 #创建目录 cd /mnt/ mkdir iso#挂载 mount -o loop ./CentOS-7-x86_64-DVD-2009.iso ./iso #前面镜像所在目录,后面所挂载得目录#检查 [rootlocalhost mnt]# df -h…

Deep Sleep 96小时:一场没有硝烟的科技保卫战

2025年1月28日凌晨3点,当大多数人还沉浸在梦乡时,一场没有硝烟的战争悄然打响。代号“Deep Sleep”的服务器突遭海量数据洪流冲击,警报声响彻机房,一场针对中国关键信息基础设施的网络攻击来势汹汹! 面对美国发起的这场…

C#中的委托(Delegate)

什么是委托? 首先,我们要知道C#是一种强类型的编程语言,强类型的编程语言的特性,是所有的东西都是特定的类型 委托是一种存储函数的引用类型,就像我们定义的一个 string str 一样,这个 str 变量就是 string 类型. 因为C#中没有函数类型,但是可以定义一个委托类型,把这个函数…