ElasticSearch教程--第十一章:修改您的数据--更新文档
2016-11-21 16:19
323 查看
转载自:http://blog.sina.com.cn/s/blog_63c8a9170102wlk3.html
本篇教程翻译自ElasticSearch官方教程,原文地址:ElasticSearch
其他章节见:ElasticSearch教程
第十一章:修改您的数据--更新文档
除了能够索引和替换文档,我们也可以更新文档。注意,虽然Elasticsearch现在不做就地更新。但是只要我们一做更新,Elasticsearch会删除旧的文档,然后索引一个新的文档并且在上面实时更新。
下面的例子展示了如何更新我们之前的文档(ID为1),将之前的姓名字段改为“Jane Doe”:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
"doc": { "name": "Jane Doe" }
}'
下面的例子展示了如何更新我们之前的文档(ID为1),将之前的姓名字段改为“Jane Doe”,同时给它增加一个年龄字段:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
"doc": { "name": "Jane Doe", "age": 20 }
}'
可以通过简单的脚本执行更新。注意,如下的动态脚本是默认禁用的直到1.4.3,如果您想了解更多细节,请看scripting docs。下面的例子使用一个脚本来给年龄增加5:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
"script" : "ctx._source.age += 5"
}'
在上面的例子,ctx._source代表要更新的那个源文档。
注意,直到写这篇教程为止,一次只能对一个文档进行更新。在未来,Elasticsearch可能会提供一个查询条件(就像SQL的UPDATE-WHERE语句)来更新多个文档。
本篇教程翻译自ElasticSearch官方教程,原文地址:ElasticSearch
其他章节见:ElasticSearch教程
第十一章:修改您的数据--更新文档
除了能够索引和替换文档,我们也可以更新文档。注意,虽然Elasticsearch现在不做就地更新。但是只要我们一做更新,Elasticsearch会删除旧的文档,然后索引一个新的文档并且在上面实时更新。
下面的例子展示了如何更新我们之前的文档(ID为1),将之前的姓名字段改为“Jane Doe”:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
"doc": { "name": "Jane Doe" }
}'
下面的例子展示了如何更新我们之前的文档(ID为1),将之前的姓名字段改为“Jane Doe”,同时给它增加一个年龄字段:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
"doc": { "name": "Jane Doe", "age": 20 }
}'
可以通过简单的脚本执行更新。注意,如下的动态脚本是默认禁用的直到1.4.3,如果您想了解更多细节,请看scripting docs。下面的例子使用一个脚本来给年龄增加5:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
"script" : "ctx._source.age += 5"
}'
在上面的例子,ctx._source代表要更新的那个源文档。
注意,直到写这篇教程为止,一次只能对一个文档进行更新。在未来,Elasticsearch可能会提供一个查询条件(就像SQL的UPDATE-WHERE语句)来更新多个文档。
相关文章推荐
- elasticsearch更新文档数据
- ASP.NET MVC4 新手入门教程特别篇之一----Code First Migrations更新数据库结构(数据迁移)修改Entity FrameWork 数据结构(不删除数据)
- Mongodb嵌套文档的修改-利用数组修改器更新数据
- Mongodb嵌套文档的修改-利用数组修改器更新数据
- ASP.NET 2.0中的数据操作系列教程二十:定制数据修改界面
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之二十三:基于用户对修改数据进行限制
- Scott Mitchell 的ASP.NET 2.0数据教程之十七:: 研究插入、更新和删除的关联事件
- Scott Mitchell 的ASP.NET 2.0数据教程之二十三:基于用户对修改数据进行限制
- Scott Mitchell 的ASP.NET 2.0数据教程之二十三:基于用户对修改数据进行限制
- Scott Mitchell 的ASP.NET 2.0数据教程之十六::概述插入、更新和删除数据
- ASP.NET 2.0中的数据操作系列教程20:定制数据修改界面
- Scott Mitchell 的ASP.NET 2.0数据教程之49:用SqlDataSource控件插入、更新、删除数据
- 数据连接,绑定,修改,更新,一条龙,全手动!
- ASP.NET 2.0中的数据操作系列教程:定制数据修改界面
- Scott Mitchell 的ASP.NET 2.0数据教程之63:在事务里对数据库修改进行封装
- Scott Mitchell 的ASP.NET 2.0数据教程之64:批更新数据
- Scott Mitchell 的ASP.NET 2.0数据教程之三十七:: 批量更新
- ASP.NET 2.0中的数据操作系列教程:定制数据修改界面
- Scott Mitchell 的ASP.NET 2.0数据教程之二十三:基于用户对修改数据进行限制
- Scott Mitchell 的ASP.NET 2.0数据教程之四十三::基于用户对修改数据进行限制