美文网首页
数据库设计的酸(ACID)碱(BASE)原则

数据库设计的酸(ACID)碱(BASE)原则

作者: 字母数字或汉字 | 来源:发表于2016-04-21 01:42 被阅读631次

事务

事务是作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。

让我们来先看一眼事务的状态机模型。

事务的五个阶段

事务必须遵循 ACID 原则。

ACID 酸原则

ACID 是关系型数据库的事务执行过程中,为了保证数据被可靠写入而必须遵循的原则。

  • Atomicity 原子性
    事务的操作要么全部执行,要么全不执行。
  • Consistency 一致性
    在事务开始前和结束后,数据库的完整性约束没有被破坏;但执行过程中允许临时的破坏。
  • Isolation 隔离性
    事务之间互不干扰,一个事务看不到另一事务执行中途的数据变更,也无法与另一事务交互。
  • Durability 持久性
    事务结束后,所作变更将写入数据库,不再被回滚,即使数据库宕机重启。

RDBMS 为了如上四点所述的极高的一致性,而没有强调其扩展性。

BASE 碱原则

  • Basically Availability 基本可用性
    数据库最基本的要求是可用性。
  • Soft-state 软状态
  • Eventually Consistency 最终一致性
    允许因延时等出现临时的数据不一致现象,只要数据最终是一致的就可以。

Basically Availability 要注意一点。大概是翻译的问题,将这里的 Basically 翻译成了“基本的”,更接近本意的解释大概是“根本上”。

Soft-state 可视为 stateless 和 stateful 的中间状态。

  • stateless 指多条请求之间没有上下文联系,这将有助于数据库的简化、扩展和恢复。
  • stateful 是指同连接的多条请求上下文之间有所联系。
  • soft-state 一般视为服务器在有限度的资源(一般是时间)内维持上下文,过期则抛弃状态回归默认状态。

你可以查阅 On the Robustness of Soft State Protocols 这篇文章了解更多 Soft-state 的概念细节。

相关文章

  • 数据库设计的酸(ACID)碱(BASE)原则

    事务 事务是作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。 让我们来先看一眼事务的状态机...

  • 1、分布式基础之CAP和BASE理论

    ACID 是数据库事务完整性的理论,CAP 是分布式系统设计理论,BASE 是 CAP 理论中 AP 方案的延伸。...

  • 2019-03-18

    InnoDB原理以及索引优化 数据库事务设计遵循ACID原则 原子性(Atomicity)、一致性(Consist...

  • GeekBand 系统设计与实践

    1. 分布式系统 2. CAP理论 3. 数据库系统 3.1 ACID与BASE 3.2 具体结构设计 4. 异步...

  • InnoDB的锁机制

    InnoDB的锁机制浅析 1. 前言 数据事务设计遵循ACID的原则。 MySQL数据库提供了四种默认的隔离级别,...

  • Nosql基础

    NoSQL介绍: 关系型数据库遵循ACID规则: BASE:反ACID模型,牺牲高一致性,获得可用性或者可靠性 C...

  • 判断酸碱平衡紊乱口诀

    大碱大碱,小呼大代 小酸小酸,大呼小代 有呼看代,酸353碱525 有代看呼,酸122碱75 呼二氧化碳,多酸少碱...

  • Redis特性解读

    我的个人主页:蚂蚁的宝藏 传统数据库遵循ACID原则,而NOSQL遵循CAP原则。Consistency(一致性)...

  • 碱去酸真牛,碱去酸真棒,碱去酸棒棒的👍👍👍

    很多人都问我碱去酸喝多久能有效果? 答:一盒叫体验,五盒叫调理,十盒叫巩固,三十盒来个全身心细胞大调整! 要是奢望...

  • 分布式系统

    理论知识 1、从ACID到CAP到BASE 1.1、ACID (Atomicity-原子性、Consistency...

网友评论

      本文标题:数据库设计的酸(ACID)碱(BASE)原则

      本文链接:https://www.haomeiwen.com/subject/gfltrttx.html