1.事务

  事务(Tranction)是指,由一系列对系统中数据进行访问与更新操作,所组成的一个逻辑执行单元。狭义上的事务是指数据库事务。

事务有四个特性。

  原子性:原子性要求事务只允讲有两种状态,全部执行成功,或者全部不执行成功。

  一致性:一个事务在执行前和执行后,数据库都必须从一个一致性转变到另一个一致性。

  持久性:一旦某个事务提交成功,那么它对数据库所做的更改,必须永久地保存下来。

  隔离性:在并发环境中,并发的事务是相互隔离的,一个事务的执行不能被其它事务干扰。

  标准的sql规范,有4种数据库隔离级别:

    (1)读未提交数据。允许脏读,隔离级别最低。

      a事务正在处理数据,但还未提交事务,此时b事务可以读取到a事务的数据,当a事务的处理进程发生异常时,事务回滚,此时b读的就是脏数据。

    (2)读已提交的数据。会出现不可重复读。

      a事务处理完数据,数据值变为20,b事务访问获取值是20;  C事务处理该数所,该数据变为30,b数据再次取,取出值是30,和上次访问取的值不一样。

    (3)可重复读。会出现幻读。

    (4)串行化。

      事务不能并发执行,只能一个一个来,效率低。

数据库默认,可重复读。遇到问题具体解决,可使用悲观锁,乐观锁。

2.

1.2 从 ACID 到 CAP/BASE的更多相关文章

  1. 分布式系列文章——从ACID到CAP/BASE

    事务 事务的定义: 事务(Transaction)是由一系列对系统中数据进行访问与更新的操作所组成的一个程序执行逻辑单元(Unit),狭义上的事务特指数据库事务. 事务的作用: 当多个应用程序并发访问 ...

  2. ACID和CAP, BASE

      ACID:关系型数据库中事务的4个属性:   Atomicity,原子性,整个事务的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间的某个环节.事务在执行过程中出错,会回滚到事务开始前的状 ...

  3. 分布式系列文章 —— 从 ACID 到 CAP / BASE

    转自:https://mp.weixin.qq.com/s?amp;mid=2652037708&__biz=MzI0NDI0MTgyOA%3D%3D&idx=1&chksm= ...

  4. 分布式理论系列(一)从 ACID 到 CAP 到 BASE

    分布式理论系列(一)从 ACID 到 CAP 到 BASE 一.ACID 1.1 事务的四个特征: (1) Atomic(原子性) 事务必须是一个原子的操作序列单元,事务中包含的各项操作在一次执行过程 ...

  5. [转帖]浅谈分布式一致性与CAP/BASE/ACID理论

    浅谈分布式一致性与CAP/BASE/ACID理论 https://www.cnblogs.com/zhang-qc/p/6783657.html ##转载请注明 CAP理论(98年秋提出,99年正式发 ...

  6. 分布式中 CAP BASE ACID 理解(转载)

    概念理解(CAP,BASE, ACID) CAP CAP:  Consistency, Availability, Partition-tolerance 强一致性(Consistency).系统在执 ...

  7. 从ACID到CAP及BASE

    从ACID到CAP及BASE ACID 说到事务,肯定想到事务的ACID特性,即原子性(Atomicity).一致性(Consistency).隔离性(Isolation).持久性(Durabilit ...

  8. 分布式数据库中CAP原理(CAP+BASE)

    分布式数据库中CAP原理(CAP+BASE) 传统的ACID 1)原子性(Atomicity): 事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务里的所有操作都成功. 2)一致性(Con ...

  9. 事务,acid,cap,paxos随笔

    事务ACID四个特性: A:原子性(Atomicity)C:一致性(Consistency)I:隔离性(Isolation)D:持久性(Durability) 原子性:语句要么全执行,要么全不执行,是 ...

随机推荐

  1. 系统安装之:虚拟机VMware V12.0.1 专业版 + 永久密钥

    撰写日期:2016-6-30 10:30:26 转自:http://blog.sina.com.cn/s/blog_4549d6770102vxue.html    VMware V12.0.1 专业 ...

  2. 常见linux命令释义(第七天)——ulimit 与变量内容的删除替代与替换。

    linux是一个多用户多任务的系统,不同于windows的单人多任务操作系统.再linux上,在同一个时间点上,可以有多个人同时执行多个任务. 那么假若有10个用户,同时打开了100个100M的文件. ...

  3. STM8S VCAP

    There is a specific pin called vcap in stm8s mcu. I recommend this pin connects to a 1uF capacitor w ...

  4. 机器学习笔记--KNN算法1

    前言 Hello ,everyone. 我是小花.大四毕业,留在学校有点事情,就在这里和大家吹吹我们的狐朋狗友算法---KNN算法,为什么叫狐朋狗友算法呢,在这里我先卖个关子,且听我慢慢道来. 一 K ...

  5. easyui datagrid json 格式

    {                                                          "total":239,                    ...

  6. 在Android上实现使用Facebook登录(基于Facebook SDK 3.5)

    准备工作: 1.       Facebook帐号,国内开发者需要一个vpn帐号(网页可以浏览,手机可以访问) 2.       使用Facebook的SDK做应用需要一个Key Hashes值. 2 ...

  7. PHP 数组(遍历)

    数组定义$attr = array(); //定义一个空的数组$attr = array(1,2,3,4); //定义一个有值的数组$attr[0]="aa";$attr[1]=& ...

  8. map遍历方法

    java中遍历MAP的几种方法 Java代码 Map<String,String> map=new HashMap<String,String>();    map.put(& ...

  9. wcf第2步之服务端标准配置文件

    服务端app.config <?xml version="1.0" encoding="utf-8" ?><configuration> ...

  10. sp_executesql 使用

    sp_executesql 比 之前的exec @sql 区别在可以实现参数的传入传出 如 declare @sql nvarchar(2000) declare @pid varchar(20) s ...