You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OpenSearch按Item Hash分组求和数组Amount的表格可视化问题

解决OpenSearch嵌套数组的Table Visualization求和错误问题

问题根源

你的数据中items是嵌套数组结构,但默认情况下OpenSearch会将数组字段当作多值字段处理,聚合时会把同一文档内所有items.amount的值与每个items.hash关联,导致求和时重复计算同文档内的其他amount值,出现统计错误。

解决方案

1. 确保索引的Mapping正确设置items为nested类型

如果你的索引还没将items设为nested类型,需要重新创建索引并设置正确的mapping(若已有数据,需重新索引迁移):

{
  "mappings": {
    "properties": {
      "fieldH": { "type": "keyword" },
      "items": {
        "type": "nested",
        "properties": {
          "hash": { "type": "keyword" },
          "amount": { "type": "integer" }
        }
      },
      "date": { "type": "date" }
    }
  }
}

nested类型会把数组中的每个对象当作独立的逻辑文档处理,保证每个hash只关联自身对应的amount。

2. 调整可视化的聚合设置

在Table Visualization的配置中,按以下层级添加聚合:

  • 第一层:Nested聚合:路径选择items,作为父聚合包裹后续的分组和求和
  • 第二层:Terms聚合:字段选择items.hash,作为分组依据(对应表格的Item Hash列)
  • 第三层:Sum聚合:字段选择items.amount,作为求和计算(对应表格的Amount列)

完成以上设置后,聚合会正确关联每个items对象的hash和amount,得到你期望的统计结果:

Item HashAmount
item12
item28
item33

内容的提问来源于stack exchange,提问作者KingMarcel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 21:35:18