gpt4 book ai didi

java - 如何在 SearchResponse 中使用 elasticSearch java api 访问聚合结果?

转载 作者:IT老高 更新时间:2023-10-28 20:50:31 29 4
gpt4 key购买 nike

有没有办法使用 java API 在搜索响应中检索聚合的存储桶?

{
"took" : 185,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 200,
"max_score" : 1.0,
"hits" : [...]
},
"aggregations" : {
"agg1" : {
"buckets" : [...]
},
"agg2" : {
"buckets" : [...]
}
}
}

目前,可以获取聚合,但我不知道如何获取存储桶。

当前的 1.0 版本的 ElasticSearch (v1.0.0.Beta2) 仍然是 beta 版本,可能还需要添加这个功能,但也没有找到这方面的信息。

最佳答案

ES source on Github我在他们的测试中看到以下内容:

SearchResponse response = client().prepareSearch("idx").setTypes("type")
.setQuery(matchAllQuery())
.addAggregation(terms("keys").field("key").size(3).order(Terms.Order.count(false)))
.execute().actionGet();

Terms terms = response.getAggregations().get("keys");
Collection<Terms.Bucket> buckets = terms.getBuckets();
assertThat(buckets.size(), equalTo(3));

关于java - 如何在 SearchResponse 中使用 elasticSearch java api 访问聚合结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21018493/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com