• 1.2 从 ACID 到 CAP/BASE


    1.事务

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

    事务有四个特性。

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

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

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

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

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

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

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

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

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

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

        (4)串行化。

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

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

    2.

  • 相关阅读:
    linux学习之路7 linux下获取帮助
    51nod 1002 数塔取数问题
    51nod 1002 数塔取数问题
    51nod 1001 数组中和等于K的数对
    51nod 1001 数组中和等于K的数对
    linux学习之路6 Vi文本编辑器
    linux学习之路6 Vi文本编辑器
    计算误差——ACM计算几何中的精度问题
    计算误差——ACM计算几何中的精度问题
    daily_journal_3 the game of thrones
  • 原文地址:https://www.cnblogs.com/fubaizhaizhuren/p/5475653.html
Copyright © 2020-2023  润新知