Elasticsearch 6.1.1 Java Api,缺少子聚合

Elasticsearch 6.1.1 Java Api, Missing child aggregation

从 ES 2.X 升级到 ES 6.1.1 早该升级了。我已将 parent/child 映射更改为连接类型,因此它对 6.X 有效。但是我们需要使用子聚合。

文档说它可用:https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/_bucket_aggregations.html#java-aggs-bucket-children

但是,如果您查看 java 文档,它是不可用的:https://artifacts.elastic.co/javadoc/org/elasticsearch/elasticsearch/6.1.1/org/elasticsearch/search/aggregations/AggregationBuilders.html

由于 java API 不可用,为 Elasticsearch 6.X 构建子聚合的正确方法是什么?创建和发送请求的唯一方法是不使用 java 传输客户端吗?

我通过搜索测试找到了答案。连接类型聚合现在有自己的构建器。

import org.elasticsearch.join.aggregations.{ChildrenAggregationBuilder, JoinAggregationBuilders}

Elasticsearch 文档显然已过时并且 JoinAggregationBuilders 不在 javadoc 中。 https://github.com/elastic/elasticsearch/blob/bd92e7fa5e5fdc625249707ecf371781b157d668/modules/parent-join/src/test/java/org/elasticsearch/join/aggregations/ChildrenIT.java#L48