Я новичок в эластичном поиске, я хочу истечь срок действия документов, проиндексированных в эластичном поиске с помощью Jest API из приложения. Я обнаружил, что для этого есть параметр, называемый TTL. Но я столкнулся с проблемой, чтобы установить параметр как включенный и истинный из клиента jest. Пожалуйста, дайте мне знать, как это сделать. Заранее спасибо!
Как я могу сделать документы просроченными в эластичном поиске, используя jest api из java-приложения?
Ответы (1)
Это, похоже, сработало для меня:
final String index = "myindex";
final String type = "mytype";
final String id = "myid";
final PutMapping putMapping = new PutMapping.Builder(index, type, "{ \"_ttl\" : { \"enabled\" : true } }").build();
client.execute(putMapping);
final Map<String, String> documentToIndex = new HashMap<String, String>();
documentToIndex.put("name", "Fred");
documentToIndex.put("phoneNumber", "1234");
documentToIndex.put("_ttl", "30s"); // Set the TTL
final String jsonDocument = gson.toJson(documentToIndex);
final JestResult result = client.execute(new Index.Builder(jsonDocument).index(index).type(type).id(id).build());
person
Alex Spurling
schedule
17.05.2016
indices
--OLDER-THAN integer_value
: elastic.co/guide/en/elasticsearch/client/curator/current/ - person Andrei Stefan   schedule 28.04.2016