Update Index

Dear Elastic Search User,

I come to know there is an <b>UpdateRequest is availble in ES version0.19.0</b>, and i can use it like 

UpdateRequest updateRequest = new UpdateRequest(indexName,indexType,indexId);
client.update(updateRequest);
and I am not sure how to pass the updated source to do updateIndex.

so far I am doing update index by the below steps in ES version 0.18.7 by

  1. GetRequest getRequest = new GetRequest(indexName,indexType, indexId);
  2. GetResponse response = client.get(getRequest).get();
    //document already existing in the elastic search engine
    3 .Map<String, Object> responseSourceMap = response.getSource();
  3. responseSourceMap .put(document to update);
  4. create a indexrequest with source as responseSourceMap
  5. client.index(indexRequest);

I have a question of what is the advantage of using client.update(updateRequest) instead of client.index(indexRequest) and how to use properly client.update(updateRequest)?
Please share your thoughts.

Update API allows you to change records on the server using a script
without need to pull a record to the client, modify it and send it back to
the server. Update API also uses versioning to ensure update consistency.
So, in your examples operations 1-6 are done on the server including
operation 4 that is specified as a script and runs on the elasticsearch
server as well. See documentation
Elasticsearch Platform — Find real-time answers at scale | Elastic and
discussion here Update API: Allow to update a document based on a script · Issue #1583 · elastic/elasticsearch · GitHub
for more information.

On Tuesday, April 24, 2012 7:26:32 AM UTC-4, Periyandavar wrote:

Dear Elastic Search User,

I come to know there is an *UpdateRequest is availble in ES

version0.19.0*, and i can use it like
UpdateRequest updateRequest = new
UpdateRequest(indexName,indexType,indexId);
client.update(updateRequest);
and I am not sure how to pass the updated source to do updateIndex.

so far I am doing update index by the below steps in* ES version 0.18.7* by

  1. GetRequest getRequest = new GetRequest(indexName,indexType, indexId);
  2. GetResponse response = client.get(getRequest).get();
    //document already existing in the Elasticsearch engine
    3 .Map<String, Object> responseSourceMap = response.getSource();
  3. responseSourceMap .put(document to update);
  4. create a indexrequest with source as responseSourceMap
  5. client.index(indexRequest);

I have a question of what is the advantage of using
client.update(updateRequest) instead of client.index(indexRequest) and
how to use properly client.update(updateRequest)?
Please share your thoughts.

--
View this message in context:
http://elasticsearch-users.115913.n3.nabble.com/Update-Index-tp3935060p3935060.html
Sent from the Elasticsearch Users mailing list archive at Nabble.com.

Thank you very much Igor Motov..