3

ES 2.X から ES 6.1.1 への長い間延期されたアップグレードを行っています。親/子マッピングを結合タイプに変更したので、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トランスポートクライアントを使用せずにリクエストを作成して送信する唯一の方法はありますか?

4

1 に答える 1

3

テストを検索して答えを見つけました。結合タイプの集計には、独自のビルダーが追加されました。

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

Elasticsearch のドキュメントは明らかに古く、JoinAggregationBuilders は javadocs にありません。https://github.com/elastic/elasticsearch/blob/bd92e7fa5e5fdc625249707ecf371781b157d668/modules/parent-join/src/test/java/org/elasticsearch/join/aggregations/ChildrenIT.java#L48

于 2018-02-05T20:54:44.657 に答える