从ES 2.X升级到ES 6.1.1需要很长时间的升级。我已将父/子映射更改为连接类型,因此它对6.X有效。但是我们需要使用子聚合。
但是,如果你查看java文档,它就不可用:https://artifacts.elastic.co/javadoc/org/elasticsearch/elasticsearch/6.1.1/org/elasticsearch/search/aggregations/AggregationBuilders.html
由于Java API不可用,为Elasticsearch 6.X构建子聚合的正确方法是什么?是不是使用java传输客户端创建和发送请求的唯一方法吗?
答案 0 :(得分:3)
我通过搜索测试找到了答案。加入类型聚合现在有自己的构建器。
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