java 中具有最小和最大聚合的范围聚合
Range Aggregation with min and max aggregation in java
我有一个场景,我需要在 java 中为数字字段的弹性搜索构建范围聚合,但我没有范围。我需要根据现有文档计算范围(最小值和最大值),然后将其传递给范围聚合。我们该怎么做?是不是我们可以结合范围,最小和最大聚合的情况?
理想情况下,可以从聚合的输出中选择 value/results 的值或类型,以在另一个聚合系列中重复使用。这一系列聚合称为管道聚合 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-pipeline.html
但是范围聚合不是管道兄弟聚合的一部分。因此,在您的场景中,您需要进行第一次查询(将最小值和最大值作为两个度量聚合 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-metrics.html)以获取最小值和最大值,然后重新使用数据进行第二次调用ES.
已经问过类似的问题 -
上面的链接 post 指向许多人向 elasticsearch 请求范围聚合的开放 issue/feature。
我有一个场景,我需要在 java 中为数字字段的弹性搜索构建范围聚合,但我没有范围。我需要根据现有文档计算范围(最小值和最大值),然后将其传递给范围聚合。我们该怎么做?是不是我们可以结合范围,最小和最大聚合的情况?
理想情况下,可以从聚合的输出中选择 value/results 的值或类型,以在另一个聚合系列中重复使用。这一系列聚合称为管道聚合 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-pipeline.html
但是范围聚合不是管道兄弟聚合的一部分。因此,在您的场景中,您需要进行第一次查询(将最小值和最大值作为两个度量聚合 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-metrics.html)以获取最小值和最大值,然后重新使用数据进行第二次调用ES.
已经问过类似的问题 -
上面的链接 post 指向许多人向 elasticsearch 请求范围聚合的开放 issue/feature。