• 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.

  • 相关阅读:
    41.分词器简单介绍
    40.倒排索引核心原理
    39.exact value and full text
    38.mapping小例子
    37.query string、_all metadata
    36.分页及deep paging
    35.multi-index和multi-type搜索模式
    BZOJ 1680 [Usaco2005 Mar]Yogurt factory:贪心【只用考虑上一个】
    BZOJ 1637 [Usaco2007 Mar]Balanced Lineup:前缀和 + 差分
    BZOJ 1647 [Usaco2007 Open]Fliptile 翻格子游戏:部分枚举 位运算
  • 原文地址:https://www.cnblogs.com/fubaizhaizhuren/p/5475653.html
Copyright © 2020-2023  润新知