[英]Elasticsearch - How to update document
elasticsearch如何更新文档? 它会删除原始文件并制作新文件吗? 我听说这就是 nosql 的更新方法。 elasticsearch 和其他 nosql 数据库一样吗? 或者它会替换/插入需要的字段?
例如,我正在使用 Elasticsearh 7.0.0。 首先,我创建了一个文档,
PUT /employee/_doc/1
{
"first_name" : "John",
"last_name" : "Snow",
"age" : 19,
"about" : "King in the north",
"sex" : "male"
}
然后我通过
POST /employee/_update/1/
{
"doc": {
"first_name" : "Aegon",
"last_name" : "Targaryen",
"skill": "fighting and leading"
}
}
最后,我得到了正确的结果
获取 /employee/_doc/1
{
"_index" : "employee",
"_type" : "_doc",
"_id" : "1",
"_version" : 9,
"_seq_no" : 11,
"_primary_term" : 1,
"found" : true,
"_source" : {
"first_name" : "Aegon",
"last_name" : "Targaryen",
"age" : 19,
"about" : "King in the north",
"sex" : "male",
"skill" : "fighting and leading"
}
}
对于答案,您可以查看文档:
除了能够索引和替换文档,我们还可以更新文档。 但请注意,Elasticsearch 实际上并没有在幕后进行就地更新。 每当我们进行更新时,Elasticsearch 都会删除旧文档,然后一次性索引一个新文档,并将更新应用于它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.