首页 > 其他分享 >20_图解Elasticsearch内部如何基于_version进行乐观锁并发控制

20_图解Elasticsearch内部如何基于_version进行乐观锁并发控制

时间:2024-10-01 19:23:10浏览次数:6  
标签:index 20 版本号 version Elasticsearch test document type

1、图解Elasticsearch内部如何基于_version进行乐观锁并发控制

(1)_version元数据

PUT /test_index/test_type/6
{
"test_field": "test test"
}

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

第一次创建一个document的时候,它的_version内部版本号就是1;以后,每次对这个document执行修改或者删除操作,都会对这个_version版本号自动加1;哪怕是删除,也会对这条数据的版本号加1

{
"found": true,
"_index": "test_index",
"_type": "test_type",
"_id": "6",
"_version": 4,
"result": "deleted",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
}
}

我们会发现,在删除一个document之后,可以从一个侧面证明,它不是立即物理删除掉的,因为它的一些版本号等信息还是保留着的。先删除一条document,再重新创建这条document,其实会在delete version基础之上,再把version号加1

标签:index,20,版本号,version,Elasticsearch,test,document,type
From: https://www.cnblogs.com/siben/p/18443126

相关文章

  • 21_上机动手实战演练基于_version进行乐观锁并发控制
    1、上机动手实战演练基于_version进行乐观锁并发控制(1)先构造一条数据出来PUT/test_index/test_type/7{"test_field":"testtest"}(2)模拟两个客户端,都获取到了同一条数据GETtest_index/test_type/7{"_index":"test_index","_type":"test_type"......
  • 22_上机动手实战演练基于external version进行乐观锁并发控制
    课程大纲1、上机动手实战演练基于externalversion进行乐观锁并发控制externalversiones提供了一个feature,就是说,你可以不用它提供的内部_version版本号来进行并发控制,可以基于你自己维护的一个版本号来进行并发控制。举个列子,加入你的数据在mysql里也有一份,然后你的应用系统......
  • Codeforces2014E Rendez-vous de Marian et Robin(分层图最短路)
    题意给定一个无向图,含有\(n\)个点和\(m\)条边。题解点击查看代码#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;constexpri64inf=1e18;voidsolve(){intn,m,h;cin>>n>>m>>h;vector<vector<......
  • 02_用大白话告诉你什么是Elasticsearch
    大白话、什么是ElasticsearchElasticsearch,分布式,高性能,高可用,可伸缩的搜索和分析系统1、什么是搜索?2、如果用数据库做搜索会怎么样?3、什么是全文检索、倒排索引和Lucene?4、什么是Elasticsearch?1、什么是搜索?百度:我们比如说想找寻任何的信息的时候,就会上百度去搜索一下,比......
  • 03_Elasticsearch的功能、适用场景以及特点介绍
    1、Elasticsearch的功能,干什么的2、Elasticsearch的适用场景,能在什么地方发挥作用3、Elasticsearch的特点,跟其他类似的东西不同的地方在哪里1、Elasticsearch的功能(1)分布式的搜索引擎和数据分析引擎搜索:百度,网站的站内搜索,IT系统的检索数据分析:电商网站,最近7天牙膏这种商品......
  • 04_手工画图剖析Elasticsearch核心概念:NRT、索引、分片、副本等
    课程大纲1、lucene和elasticsearch的前世今生2、elasticsearch的核心概念3、elasticsearch核心概念vs.数据库核心概念1、lucene和elasticsearch的前世今生lucene,最先进、功能最强大的搜索库,直接基于lucene开发,非常复杂,api复杂(实现一些简单的功能,写大量的java代码),需要深入......
  • 01_Elasticsearch顶尖高手系列课程的介绍
    3、课程内容介绍(1)核心知识篇课程特点(1)使用最新Elasticsearch5.2版本讲解,市面上的书籍和视频几乎都停留在2.x版本(2)深入浅出ES核心工作原理,全部手工画图讲解,完全不同于市面上已有视频的PPT讲解(3)涵盖Elasticsearch所有核心知识点,系统化,体系完整详细,有一定深度,包括完整Java开发......
  • CSCI1120 Introduction to Computing Using C++
    CSCI1120IntroductiontoComputingUsingC++,Fall2024/25DepartmentofComputerScienceandEngineering,TheChineseUniversityofHongKongCopyright©2024CSE,CUHKPage1of8Assignment2:GumballMachinesDue:23:59,Thu3Oct2024Filename:gumball.......
  • 2024.09 做题记录
    20240901上午模拟赛能想出来T2,但是怎么没想出来呢。T2:及时去想\(2^{k/2}\)的做法,猜到是DP套DP,但是没有进一步思考内层状态是\(O(2^{k/2}k)\)的。T3:没调完/fn/fnT4:赛时会了\(f_{i,j}\)表示\(B(i,j)\)是否可行,但是么有去想进一步的单调性优化,\(f_{i}\)可以表示最......
  • CSP2024-30
    A题意:将一个圆等分为\(K\)分,给出其中\(n\)个等分点的编号,\(x_i<x_{i+1}\)。有向边\(i\toj\)存在,当且仅当\(j\)是距离\(i\)最大的点(不唯一),且与图中其他边无交点(端点不算)。求图中最多有多少条边。\(3\leK\le10^9,3\len\le\min(K,10^5)\)。引理:不存在......