【Elasticsearch】ip range 聚合

在 Elasticsearch 的 IP 范围聚合中,`mask`参数用于定义 IP 地址范围,它基于 CIDR(无类别域间路由)表示法来指定网络前缀和子网掩码。CIDR 是一种灵活的 IP 地址划分方法,通过指定网络前缀长度来划分网络。

`mask`的作用

在 Elasticsearch 的 IP 范围聚合中,`mask`参数允许你使用 CIDR 表示法来定义 IP 地址范围。例如:

• `10.0.0.0/24`表示网络前缀为`10.0.0.0`,掩码长度为 24 位,覆盖从`10.0.0.0`到`10.0.0.255`的地址范围。

• `10.0.0.128/25`表示网络前缀为`10.0.0.128`,掩码长度为 25 位,覆盖从`10.0.0.128`到`10.0.0.255`的地址范围。

为什么使用`mask`

使用`mask`的主要目的是更高效地管理和统计 IP 地址范围。CIDR 表示法允许灵活地划分网络,避免传统分类方法(A、B、C 类)的浪费。通过定义子网掩码,可以精确地指定需要聚合的 IP 地址范围,从而更准确地统计每个范围内的文档数量。

示例

假设你有一个索引`ip_addresses`,其中存储了用户的 IP 地址信息。你可以使用以下查询来统计特定 CIDR 范围内的 IP 地址数量:

```json

GET /ip_addresses/_search

{

"size": 0,

"aggs": {

"ip_ranges": {

"ip_range": {

"field": "ip",

"ranges": [

{

"mask": "10.0.0.0/24"

},

{

"mask": "10.0.0.128/25"

}

]

}

}

}

}

```

响应示例:

```json

{

"aggregations": {

"ip_ranges": {

"buckets": [

{

"key": "10.0.0.0/24",

"from": "10.0.0.0",

"to": "10.0.0.255",

"doc_count": 100

},

{

"key": "10.0.0.128/25",

"from": "10.0.0.128",

"to": "10.0.0.255",

"doc_count": 50

}

]

}

}

}

```

在这个例子中:

• `10.0.0.0/24`范围内的文档数量为 100。

• `10.0.0.128/25`范围内的文档数量为 50。

通过使用`mask`,你可以灵活地定义 IP 地址范围,并对这些范围进行聚合和统计。

相关推荐
BreezeJiang10 小时前
写了 Dockerfile 却没生效:ES + Kibana 的 compose 配置里,藏着三个反直觉的点
elasticsearch
Elasticsearch14 小时前
Elastic 计划利用 NVIDIA RTX GPU 将 Jina 模型推理速度提升至 8 倍
elasticsearch
Elastic 中国社区官方博客14 小时前
告别繁琐控制台:Kabanos 如何将 MongoDB Compass 的易用性带入 Elasticsearch
大数据·数据库·mongodb·elasticsearch·搜索引擎·全文检索
Elastic 中国社区官方博客19 小时前
控制告警如何触发、恢复和发送通知:Elastic 可观测性中的 Kibana 通用告警
大数据·数据库·安全·elasticsearch·搜索引擎·全文检索·es
深海里的鱼(・ω<)★20 小时前
SMB备份导致的 Gitea 分支推送成功但界面不可见故障复盘
大数据·elasticsearch·gitea
SL-staff21 小时前
JVS私有化部署运维避坑指南:Kafka容灾、ES冷热分离、RabbitMQ可观测性三实战检查项
elasticsearch·kafka·jvs运维·es冷热分离·rabbitmq监控·中间件巡检·sre实践
Elasticsearch1 天前
我们如何通过 70 多个拉取请求,将 OpenTelemetry Java agent 迁移到 invokedynamic
elasticsearch
Elasticsearch1 天前
将 Elastic 引入 Claude:原因、方法与注意事项
elasticsearch
Sayai1 天前
Elasticsearch Rollup 汇算索引实战:监控指标多粒度预聚合查询,附 painless 时间窗取每日最新值
大数据·运维·elasticsearch·搜索引擎·性能优化·监控
Elastic 中国社区官方博客1 天前
Elasticsearch:安装自行管理的 Elastic Stack 集群
大数据·运维·服务器·数据库·elasticsearch·搜索引擎·全文检索