Как удалить все документы из индекса вasticsearch, используя RestHighLevelClient - PullRequest
0 голосов
/ 29 октября 2018

Я попробовал приведенный ниже код, он работает нормально, но использует TransportClient для удаления всех документов.

DeleteByQueryRequestBuilder deleteByQueryRequestBuilder = DeleteByQueryAction.INSTANCE.newRequestBuilder(transportClient)
                 .filter(QueryBuilders.matchAllQuery())
                 .source(indexName);
         BulkByScrollResponse response = deleteByQueryRequestBuilder
                .filter(QueryBuilders.matchAllQuery()).get()

Я использую asticsearch 6.1.4 . Как удалить все документы из индекса, используя RestHighLevelClient .

1 Ответ

0 голосов
/ 09 января 2019

Я использую эластичный поиск 6.5.4. В этом фрагменте я использую клиент RestHighLevelClient.

DeleteByQueryRequest request = new DeleteByQueryRequest(indexName);
request.setQuery(QueryBuilders.matchAllQuery());
BulkByScrollResponse response = client.deleteByQuery(request, RequestOptions.DEFAULT);

Класс RestHighLevelClient имеет метод deleteByQuery , который требует запроса. В этом запросе вы можете определить фильтры, которые вам нужны.

Вы можете найти более подробную информацию здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...