Elasticsearch之CURL命令的UPDATE
对于,Elasticsearch之CURL命令的UPDATE包括局部更新和全部更新。可以去看我写的另一篇博客。
Elasticsearch之更新(全部更新和局部更新)
总结:
ES全部更新,使用PUT或者POST
ES局部更新,使用POST
ES可以使用PUT或者POST对文档进行更新(包括局部更新和全部更新),如果指定ID的文档已经存在,则可执行更新操作。
执行更新操作的时候注意细节
1) ES首先将旧的文档标记为删除状态
2) 然后添加新的文档
3)旧的文档不会立即消失,但是你也无法访问
4)ES会在你继续添加更多数据的时候在后台清理已经标记为删除状态的文档。
我这里,仅仅,演示一个,局部更新。
局部更新,即可以添加新字段或者更新已有字段(必须使用POST)
即,下面,字段nmae不更新,只更新age,所以,这才叫做局部更新。
[hadoop@master elasticsearch-2.4.0]$ curl -XPOST http://master:9200/zhouls/user/1/_update -d '{"doc" : {"name":"john" ,"age":"30"}}' {"_index":"zhouls","_type":"user","_id":"1","_version":2,"_shards":{"total":2,"successful":2,"failed":0}}[hadoop@master elasticsearch-2.4.0]$ [hadoop@master elasticsearch-2.4.0]$ [hadoop@master elasticsearch-2.4.0]$
作者:大数据和人工智能躺过的坑
出处:http://www.cnblogs.com/zlslch/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!