zoukankan      html  css  js  c++  java
  • Elasticsearch学习笔记(八)Elasticsearch的乐观锁并发控制

    一、基于_version的乐观锁并发控制

                   
    语法:PUT /test_index/test_type/id?version=xxx
                更新时带上数据的版本号,只有版本号一致的情况下才可以修改,如果出现版本号不一致的情况或者丢弃该数据或者获取最新的版本号然后在进行更新

    PUT /test_index/test_type/7?version=1
    {
      "test_field": "test client 1"
    }

    {
      "_index": "test_index",
      "_type": "test_type",
      "_id": "7",
      "_version": 2,
      "result": "updated",
      "_shards": {
        "total": 2,
        "successful": 1,
        "failed": 0
      },
      "created": false
    }

    二、基于external version进行乐观锁并发控制


           语法: PUT /test_index/test_type/id?version=xxxxx&version_type=external

    三、_version和external version的区别

             version_type=external与_version的区别在于,
                          _version,只有当你提供的version与es中的_version一模一样的时候,才可以进行修改,只要不一样,就报错;
                         version_type=external的时候,只有当你提供的version比es中的_version大的时候,才能完成修
  • 相关阅读:
    mysql单机多实例配置
    mysql中FILE权限
    手把手教你用 Git(转)
    单例模式
    Java中的枚举Enum
    常见排序算法的亲手实现(代码与注释)
    Java中的位运算
    重载
    Java中的boxing和unboxing(转)
    Java的transient关键字(转)
  • 原文地址:https://www.cnblogs.com/wshcn/p/8150546.html
Copyright © 2011-2022 走看看