Упругий поиск, чтобы найти индекс пуст или нет с Java API - PullRequest
0 голосов
/ 23 октября 2018

Прежде чем индексировать документы, я хочу проверить, пуст ли мой индекс или нет.Это значит, я просто хочу подсчитать все документы.Если он возвращает 0, я хочу выполнить какое-то действие, иначе я хочу выполнить другое действие.

Использую версию Elastic Search 6.2.3 с RestHighLevelClient.

1 Ответ

0 голосов
/ 23 октября 2018

Просто запустите поисковый запрос с размером, равным 0. Тогда у вас будет доступ к общему количеству обращений, что означает, сколько документов в индексе.

SearchRequest searchRequest = new SearchRequest("index_name"); 
SearchSourceBuilder searchBuilder = new SearchSourceBuilder(); 
searchBuilder.query(QueryBuilders.matchAllQuery()); 
searchBuilder.size(0);
searchRequest.source(searchBuilder); 

SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
SearchHits hits = searchResponse.getHits();
long totalHits = hits.getTotalHits();
if(totalHits == 0) {
    // proceed
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...