繁体   English   中英

Elasticsearch Java 高级客户端 7.3.1:搜索响应中索引明智命中的聚合

[英]Elasticsearch Java High Level Client 7.3.1 :Aggregation for Index wise hits in search Response

我正在使用 ES 7.3.1 和 Elasticsearch 高级客户端 7.3.1 我们有一个由 3 个索引组成的别名。

Alias Name :  employee_search
Indexes in this alias : contract_employee,permanent_employee,client

我正在搜索这个别名

SearchRequest searchReq = new SearchRequest("employee_search");
WrapperQueryBuilder qb = QueryBuilders.wrapperQuery(searchQuery); //i am preparing a dsl query
SearchSourceBuilder sbb = new SearchSourceBuilder();
sbb.query(qb);
searchReq.source(sbb);
SearchResponse resp = esClient.search(searchReq, RequestOptions.DEFAULT);

作为回应,我需要一个聚合,在那里我可以获得索引明智的命中(哪个索引给出了多少命中?)需要实现的聚合是

{
  "aggs": {
    "index_wise_count": {
      "terms": {
        "field": "_index"
      }
    }
  }
}

如何在现有的搜索响应中实现这一点?

我尝试过但没有用的:

SearchRequest searchReq = new SearchRequest("employee_search");
    WrapperQueryBuilder qb = QueryBuilders.wrapperQuery(searchQuery); //i am preparing a dsl query
    SearchSourceBuilder sbb = new SearchSourceBuilder();
    sbb.query(qb);
    sbb.aggreagation(AggregationBuilders.terms("index_wise_count").field("index"));
    searchReq.source(sbb);
    SearchResponse resp = esClient.search(searchReq, RequestOptions.DEFAULT);

我错过了一个下划线:(

sbb.aggreagation(AggregationBuilders.terms("index_wise_count").field("_index"));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM