开发者学堂课程【ElasticSearch 入门精讲:PUT 和 POST_更新Ⅱ之局部更新】学习笔记,与课程紧密连接,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/631/detail/9955
PUT 和 POST_更新Ⅱ之局部更新
内容介绍:
一、讲义
二、演示
三、说明
一、讲义
局部更新:
使用的最为广泛。 POST 用于局部更新,PUT 不能。
要是用_update,同时要更新的是 source 中的 doc 内容。
例子:
使用 post,将索引标识为OSUhuGkBJFmjDtb2b5pO 索引信息更新为:"author":"小鱼儿"。
curl-H'Content-Type:application/json'-XPOST'http://JANSON01:9200/bigdata/product/OSUhuGkBJFmjDtb2b5pO/ _update?pretty’ -d '{ "doc":{"author":"小鱼儿"}}'
二、演示
将以上信息中的"author":"杰克逊"进行局部更新
1、需要把 id:
OSUhuGkBJFmjDtb2b5pO改为HM9rL2oB300nRXZV6BRB,还是原来的 id 不变。
2、最后的署名中 doc 的内容 "author":"杰克逊"要改为"author":"小鱼儿" 即:
curl-H'Content-Type:application/json'-XPOST 'http://JANSON01:9200/bigdata/product/HM9rL2oB300nRXZV6BRB/ _update?pretty’ -d '{ "doc":{"author":"小鱼儿"}}'
3、点击确定,成功后查看结果。结果中只更新了小鱼儿,其他没有变动。
三、注意:
1)update: 更新的动作(action),在 url 中,以下划线开头的是动作,es 内部赋予了特殊的含义。
2)局部更新时,使用_update 内置的动作,需要带参数:-XPOST