gpt4 book ai didi

具有嵌套对象的elasticsearch复合aggs

转载 作者:行者123 更新时间:2023-12-03 22:40:23 26 4
gpt4 key购买 nike

我有一个带有嵌套字段的对象。

  "parameters": {
"type": "nested",
"properties": {
"id": {
"type": "integer"
},
"values": {
"type": "keyword"
}
}
}

我正在尝试聚合操作:

GET places/place/_search?size=0
{
"query": {
"match_all": {}
},
"aggs": {
"parameters": {
"nested": {
"path": "parameters"
},
"aggs": {
"parameters_cnt_i": {
"terms": {
"field": "parameters.id",
"size": 100
},
"aggs": {
"parameters_cnt_v": {
"terms": {
"field": "parameters.values",
"size": 100
}
}
}
}
}
}
}
}

但这并不好,因为我将“大小”设置得太大了。在文档中说

如果您想在嵌套术语聚合中检索所有术语或术语的所有组合,您应该使用 Composite 聚合

但我无法理解如何使用带有嵌套对象的复合聚合......它是真实的吗?

最佳答案

我的解决方案

{
"size": 0,
"aggs" : {
"parameters" : {
"nested" : {
"path" : "parameters"
},
"aggs": {
"group":{
"composite" : {
"size": 100, // your size
"sources" : [
{ "id": { "terms" : { "field": "parameters.id"} }}
]
}
}
}
}
}
}

关于具有嵌套对象的elasticsearch复合aggs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48995464/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com