-----------------------------------------------------------------

1、悲观锁和乐观锁

悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性操作。

乐观锁:假定不会发生并发冲突,提交操作时检查是否违反数据完整性。

-----------------------------------------------------------------

2、elk的版本控制

内部版本控制:_version自增长,修改数据后,_version自动加1

外部版本控制:为了保持_version与外部控制数值保持一致,

使用version_type=external,

检查数据与当前的version值是否小于请求中的version值。

-----------------------------------------------------------------

3、新建数据版本是_version=1,随着对文档操作,版本号自增长。

-----------------------------------------------------------------

4、内部版本控制

请求命令:

PUT /library/books/1

{

“title”:“Black Horse”,

“name”:{

“first”:“shengqi”,

“last”:“liang”

},

"publish_date","1900/01/01",

"price":"35.99"

}

响应结果:

请求命令:

GET /library/books/1

响应结果:

{

"_index":"library",

"_type":"books",

"_id":"1",

"_version":"1",

"_found":"true",

"_source":{

"title":"black fly",

"name":{

"first":,"xxx",

"last":,"yyy"

}

"publish_date":"2015-12-06",

"price":"100"

}

}

#不带版本号的更新

POST /library/books/1/_update

{

"doc":{

"price":10

}

}

#带版本号的更新(要求一致才能更新)

POST /library/books/1/_update?version=2

{

"doc":{

"price":10

}

}

-----------------------------------------------------------------

5、外部版本控制 

POST /library/books/1/_update?version=20&version_type=external

{

"doc":{

"price":10

}

}

ELK学习总结(2-5)elk的版本控制的更多相关文章

  1. ELK学习实验013:ELK的一个完整的配置操作

    前面做了关于ELK组件的各个实验,但是并没有真正的把各个组件结合起来做一个实验,现在使用一个脚本简单的生成日志,模拟生产不断产生日志的效果 一 流程说明 使用脚本产生日志,模拟用户的操作 日志的格式 ...

  2. ELK学习实验020:ELK使用kafka缓存

    首先安装一个kafka集群,但是zookeeper使用单节点,可以让kafka快速跑起来,后续再研究kafka和zokkeeper的集群 1 安装Kafka集群 下面是三个节点都要做 [root@no ...

  3. ELK学习实验019:ELK使用redis缓存

    1 安装一个redis服务 [root@node4 ~]# yum -y install redis 直接启动 [root@node4 ~]# systemctl restart redis [roo ...

  4. ELK学习链接

    1.  ELK原理与介绍 2. ELK部署记录

  5. ELK 学习笔记之 elasticsearch 版本控制

    版本控制: elasticsearch 版本控制: 内部版本控制 外部版本控制 内部版本控制: 内部版本会检查你提供的版本值和文档的版本值是否一致,如果不一致就报错,一致则可以更新. curl -XP ...

  6. ELK学习笔记(一)安装Elasticsearch、Kibana、Logstash和X-Pack

    最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因 ...

  7. ELK学习笔记之CentOS 7下ELK(6.2.4)++LogStash+Filebeat+Log4j日志集成环境搭建

    0x00 简介 现在的公司由于绝大部分项目都采用分布式架构,很早就采用ELK了,只不过最近因为额外的工作需要,仔细的研究了分布式系统中,怎么样的日志规范和架构才是合理和能够有效提高问题排查效率的. 经 ...

  8. ELK学习之Logstash篇

    Logstash在ELK这一整套解决方案中作为数据采集终端,支持对接Kafka.数据库(MySQL.Oracle).文件等等. 而在Logstash内部的数据流转,主要经过三个环节:input -&g ...

  9. ELK学习笔记(二)-HelloWorld实例+Kibana介绍

    这次我们通过一个最简单的HelloWolrd来了解一下ELK的使用. 进入logstash的config目录,创建stdin.conf 文件. input{ stdin{ } } output{ st ...

随机推荐

  1. Linux shell 脚本(三)

    转载请标明出处:  http://blog.csdn.net/zwto1/article/details/45111547:  本文出自:[zhang_way的博客专栏] 九.使用case 分支 语法 ...

  2. ASP.NET Core 2.0 : 七.一张图看透启动背后的秘密

    为什么我们可以在Startup这个 “孤零零的” 类中配置依赖注入和管道? 它是什么时候被实例化并且调用的? 参数中的IServiceCollection services是怎么来的? 处理管道是怎么 ...

  3. selenium-01 搭建环境

    很老套,但是不得不做的事. selenium的发展史,具体的虫师大大已经写得很具体了:http://www.cnblogs.com/fnng/p/3653793.html 1.第一种使用的姿势就是ID ...

  4. CCF-CSP 201709-4通信网络

    问题描述 某国的军队由N个部门组成,为了提高安全性,部门之间建立了M条通路,每条通路只能单向传递信息,即一条从部门a到部门b的通路只能由a向b传递信息.信息可以通过中转的方式进行传递,即如果a能将信息 ...

  5. C++实验1

  6. Vue解析三之过滤器

    export function formatDate(date, fmt) { if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (date.g ...

  7. java实现单链表的增删功能

    JAVA 实现单链表的增删功能 package linked; class LinkedTable{ } public class LinkedTableTest { public static vo ...

  8. mysql limit 接收变量

    参考文章:https://blog.csdn.net/ljz2009y/article/details/7887743 PREPARE s1 FROM 'SELECT * FROM t LIMIT ? ...

  9. 【Python】 用户图形界面GUI wxpython III 更多组件

    wxpython - 更多组件 我写到的这些组件可能一来不是很详细,二来不是最全的,想要更好地用这些组件,应该还是去看看教程和别的示例.比较简单的,推荐http://download.csdn.net ...

  10. spring-boot-devtools

    Create a new Maven Project  and  we have two class under the package com.example.demo like below scr ...