java - Elasticsearch Java High Level Client 7.3.1:聚合搜索响应中的索引命中
问题描述
我正在使用 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"));
推荐阅读
- c# - Listview 不显示带有自定义 UserControl 的滚动条
- typescript - 是否可以在 Angular 6 的 UnitTest 规范文件中检查 Inputtext 的最大长度
- react-native - React Native:如何在睡眠之间找到屏幕唤醒时间
- arrays - a[:,None] 和 a[:,] 的区别
- android - 如何从 Service 或 JobIntentService 匿名登录 firebase
- amazon-web-services - 如何通过 aws cli 在组织的 Cloudfront 实例中部署 lambda@edge 代码?
- java - 如何以分贝为单位测量声音...保持 0.0dB
- windows - 凭据在 PowerShell 脚本中提示 Send-MailMessage
- types - 更改内容默认标题类型
- bootstrap-4 - 文本在 bootstrap-4 中超出卡片