2016-02-08 5 views
0

Я подхожу к ElastichSearch с помощью Java-клиента. Я пытаюсь удалить весь индекс. Я могу удалить один документ со следующим кодом:Удалить весь индекс в ElasticSearch

DeleteResponse response = client.prepareDelete("twitter", "tweet", "1").get(); 

Я хотел бы, чтобы удалить все документы для данного индекса в одной команде. Обратите внимание, что я использую версию 2.2.

Благодаря

EDIT: Я нашел подобный вопрос, но он относится к старой версии API. В настоящее время я работаю с версией 2.2.

+0

Возможный дубликат [Как удалить индекс ElasticSearch?] (Http://stackoverflow.com/questions/8019221/how -to-erase-elasticsearch-index) – Derlin

+0

Проблема практически такая же, но API в версии 2.2 (текущий, что мне нужно) немного отличается –

+0

попробуйте использовать https://www.elastic.co/guide/en /elasticsearch/client/java-api/1.3/delete-by-query.html –

ответ

5

Самый простой способ - удалить свой индекс, а затем воссоздать его.

DeleteIndexResponse deleteResponse = client.admin().indices().delete(new DeleteIndexRequest("your-index")).actionGet() 

затем

client.admin().indices().prepareCreate("your-index").get(); 

Это будет работать с 2.2 API

Смежные вопросы