首页 技术 正文
技术 2022年11月18日
0 收藏 358 点赞 3,200 浏览 1363 个字

一、版本号:

在es中每个文档都有一个版本号,默认情况下,版本号都是随着每次对该文档的修改或者删除自增的,当然你也可以自己指定。有了这个文档号,我们可以像mysql

乐观锁一样,用来进行控制字我们文档的更新,如果要更新的文档号与索引中的文档号不一致,那么es会拒绝该次操作。常用于事务的处理中。

url:PUT http://127.0.0.1:9200/myes/name/6?version=17&pretty/

参数:

{
"name":"zzq",
"age":17
}

结果:

成功的结果

{
"_index": "myes",
"_type": "name",
"_id": "6",
"_version": 18,
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": false
}

 

失败的结果:

{
"error": {
"root_cause": [
{
"type": "version_conflict_engine_exception",
"reason": "[name][6]: version conflict, current [18], provided [17]",
"shard": "2",
"index": "myes"
}
],
"type": "version_conflict_engine_exception",
"reason": "[name][6]: version conflict, current [18], provided [17]",
"shard": "2",
"index": "myes"
},
"status": 409
}

  

二:操作类型

系统支持通过 op_type=create命令执行创建操作,只有不存在此文档的时候才会创建。如果不指定类型,那么存在此文档就会更新。

url:PUT http://127.0.0.1:9200/myes/name/8?op_type=create&pretty/

参数:

{
"name":"zzq5",
"age":17
}

 

结果:

{
"_index": "myes",
"_type": "name",
"_id": "8",
"_version": 1,
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": true
}

  再次执行上述的链接,结果如下:

{
"error": {
"root_cause": [
{
"type": "document_already_exists_exception",
"reason": "[name][8]: document already exists",
"shard": "1",
"index": "myes"
}
],
"type": "document_already_exists_exception",
"reason": "[name][8]: document already exists",
"shard": "1",
"index": "myes"
},
"status": 409
}

  

 三、分片选择

默认情况下,分片的选择是通过ID的散列值进行控制的。这个只能通过 router参数进行手动控制(通过hash的值)

url:PUT http://127.0.0.1:9200/myes/name/?router=myes&pretty/

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,082
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,557
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,406
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,179
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,815
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,898