ES中文档的版本号(二)

本文深入探讨了Elasticsearch(ES)中文档版本号的重要性,它用于防止并发更新时的数据冲突。介绍了外部版本号的概念,允许使用自定义版本号进行并发控制,并解释了ES如何处理乱序请求,采用乐观锁策略来确保数据一致性。通过实例展示了如何设置和使用版本号以及version_type参数,以保证更新操作的成功。
摘要由CSDN通过智能技术生成

ES中文档的版本号(二)


前言

书接上回版本号
还能有点啥 咱们再唠唠

上回说到版本号的更新机制及如何查询版本号
详情看这里---->https://blog.csdn.net/qq_43641069/article/details/118358015

版本号的意义

简单来说 四个字儿:防止冲突。
ElasticSaerch需要一种方法确保文档的旧版本不会覆盖新的版本:ES利用_version (版本号)的方式来确保应用中相互冲突的变更不会导致数据丢失。需要修改数据时,需要指定想要修改文档的version号,如果该版本不是当前版本号,请求将会失败。

说到防止冲突,那一定会想到一个东西 那就是“锁”。
这种通过版本号来防止冲突的方式就属于乐观锁。

外部版本号(external version)

es中不仅可以使用它自带的内部版本号,还可以基于你自己维护的一个版本号来进行并发控制。举个列子,加入你的数据在mysql里也有一份,然后你的应用系统本身就维护了一个版本号,无论是什么自己生成的,程序控制的。这个时候,你进行乐观锁并发控制的时候,可能并不是想要用es内部的_version来进行控制,而是用你自己维护的那个version来进行控制。

?version=1
?version=1&version_type=external

version_type=external&#

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值