elasticsearch - 在 Elasticsearch 中与两个术语聚合时,术语无法解析字段大小错误

标签 elasticsearch elasticsearch-5 elasticsearch-2.0 elasticsearch-aggregation

我想聚合用户和事件这两个术语,并且我想获取每个用户的每个事件的计数。

我试过下面的代码。但是我在倒数第二行收到错误消息:

RequestError: TransportError(400, 'parsing_exception', '[terms] failed to parse field [size]')

你能告诉我如何解决这个问题吗?

es.search(index=['ind'],doc_type=['axis'],body={
"query": {
    "bool": {
        "must": [
            {
                "range": {
                    "time": {
                        "gt": "10"
                    }
                }
            }
        ]
    }
},
"from": 0,
"size": 0,
"aggregations": {
    "user": {
        "aggregations": {
            "event": {
                "aggregations": {
                    "COUNT(event)": {
                        "value_count": {
                            "field": "event"
                        }
                    }
                },
                "terms": {
                    "field": "event",
                    "size": 0
                }
            }
        },
        "terms": {
            "field": "user",
            "size": 200
        }
    }
}
})

最佳答案

您的查询的唯一问题是您的聚合大小设置为“0”

如评论中所述。以零大小进行聚合是没有意义的,因此 Elasticsearch 会抛出错误

 [size] must be greater than 0. Found [0] in [event]

连同您提到的上述错误

希望对你有帮助

关于elasticsearch - 在 Elasticsearch 中与两个术语聚合时,术语无法解析字段大小错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51579846/

相关文章:

mysql - 如果我将 jdbc river 与 mysql 一起使用, Elasticsearch 是否会自行更新其索引?

从传输客户端到高级 REST 客户端的 Elasticsearch 升级路径

elasticsearch - 根映射定义的参数不受支持

elasticsearch - 创建索引时如何在 Elasticsearch 模式中添加过滤器和映射?

java - 如何从 Java 应用程序中运行 elasticsearch 5.1 服务器(不通过命令行)

elasticsearch - 查找完整日期,而不仅仅是年份(Elasticsearch)

elasticsearch - Elasticsearch嵌套父子映射

performance - 当我只想要前10个存储桶时,是否可以使Elasticsearch聚合更快?

ElasticSearch 反向通配符搜索

elasticsearch - 如何在 Elasticsearch 中使嵌套字段中的子字段平坦?