フィールドごとに集計を行うときは、topHits
subAggregation も行い、ES にすべての情報を返してもらいたいと考えTopHits
ています。しかし、 size を に指定するとInteger.MAX_VALUE
、何も返されません。なんで?
SearchResponse aggregationResponse = transportClient.prepareSearch(indexAndType[0]).setTypes(indexAndType[1])
.setQuery(queryBuilder)
.addAggregation(AggregationBuilders.terms("aggregation").field(aggregateField).size(size)
.subAggregation(AggregationBuilders.topHits("hits").setSize(Integer.MAX_VALUE).addSort(SortBuilders.fieldSort("createdDate").order(SortOrder.ASC)))
.subAggregation(AggregationBuilders.count("totalCount"))).execute().actionGet();
そして、 key の集約にバケットがありません"aggregation"
。