这期内容当中小编将会给大家带来有关如何进行Elasticsearch中的文档操作并发控制,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
以 Elasticsearch 7.9.2 为准。
并发控制
悲观并发控制:在操作可能出现变更冲突的资源时,对资源加锁,操作完成后解锁。
乐观并发控制:认为变更冲突的可能性很小,先不加锁,直接进行操作,如果发现数据读写过程中被修改,则更新失败。由调用者决定如何解决变更冲突。
ES 采用乐观并发控制。
ES 的并发控制
ES 的文档是不可变的,修改文档实际上是先删除原文档再创建一个 id 与原文档相同的新文档,同时 _version 字段比原文档增加 1。
ES 的文档有 _seq_no 和 _primany_term 字段,在通过 REST API 更新文档时,在 QueryString 中增加 if_seq_no 和 if_primany_term 参数进行并发控制。这两个参数的含义是,当文档的 _seq_no 和 _primany_term 分别与传递的 if_seq_no 和 if_primany_term 相等时,更新才会成功。
上述就是小编为大家分享的如何进行Elasticsearch中的文档操作并发控制了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
原创文章,作者:bd101bd101,如若转载,请注明出处:https://blog.ytso.com/223117.html