码迷,mamicode.com
首页 > 其他好文 > 详细

ElasticSearch for Modify your Data

时间:2016-06-16 11:50:06      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:elasticsearch modify

一、Updating Documents

This example shows how to update our previous document (ID of 1) by changing the name field to "Jane Doe":

curl -XPOST ‘192.168.56.101:9200/customer/external/1/_update?pretty‘ -d ‘

{

"doc":{"name":"Jane Doe"}

}‘

This example shows how to update our previous document (ID of 1) by changing the name field to "Jane Doe" and at the same time add an age field to it:

curl -XPOST ‘192.168.56.101:9200/customer/external/1/_update?pretty‘ -d ‘

{

"doc":{"name":"Jane Doe","ages":20}

0}‘

Elasticsearch支持通过脚本修改文档信息

curl -XPOST ‘192.168.56.101:9200/customer/external/1/_update?pretty‘ -d ‘ {  "script" : "ctx._source.ages += 5" }‘

OR

curl -XPOST ‘192.168.56.101:9200/customer/external/1/_update?pretty‘ -d ‘

{

 "script": {

     "inline":{ctx._source.ages+=age},

     "params":{

      "age":20     

}   

}

}‘

除了_source字段,可以通过ctx来获得_index、_type、_id、_version、_parent、_timestamp、_ttl等字段信息

也可以利用srcipt添加字段信息

curl -XPOST ‘192.168.56.101:9200/customer/external/1/_update?pretty‘ -d  ‘

{

  "script":"ctx._source.name_of_new_field=\"value_of_new_field\""

}‘

也可以利用srcipt移除字段信息

curl -XPOST ‘192.168.56.101:9200/customer/external/1/_update?pretty‘ -d ‘

{

  "script":"ctx._source.remove(\"name_of_field\")"

}‘


二、Delting Documents

Deleting a document is fairly straightforward. This example shows how to delete our previous customer with the ID of 2

curl -XDELETE ‘192.168.56.101:9200/customer/external/2?pretty‘

三、Batch Processing

As a quick example, the following call indexes two documents (ID 1 - John Doe and ID 2 - Jane Doe) in one bulk operation:

curl -XPOST ‘localhost:9200/customer/external/_bulk?pretty‘ -d ‘
{"index":{"_id":"1"}}
{"name": "John Doe" }
{"index":{"_id":"2"}}
{"name": "Jane Doe" }
‘

This example updates the first document (ID of 1) and then deletes the second document (ID of 2) in one bulk operation:

curl -XPOST ‘localhost:9200/customer/external/_bulk?pretty‘ -d ‘
{"update":{"_id":"1"}}
{"doc": { "name": "John Doe becomes Jane Doe" } }
{"delete":{"_id":"2"}}


ElasticSearch for Modify your Data

标签:elasticsearch modify

原文地址:http://cqvienet.blog.51cto.com/6896294/1789786

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!