ACID


Google 

ACID (正體)

ACID,是指在数据库管理系统DBMS)中事务所具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。

在数据库系统中,一个事务是指由一系列数据库操作组成的一个完整的逻辑过程。例如银行转帐,从原账户扣除金额,以及向目标账户添加金额,这两个数据库操作的总和构成一个完整的逻辑过程,不可拆分。这个过程被称为一个事务,具有ACID特性。

  • 原子性
整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
  • 一致性
在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。
  • 隔离性
两个事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间某一时刻的数据。
  • 持久性
在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。

ACID的概念在ISO/IEC 10026-1:1992文件的第四段内有所说明。

实现

由于一项操作通常会包含许多子操作,而这些子操作可能会因为硬件的损坏或其他因素产生问题,要正确实现ACID并不容易。ACID建议数据库将所有需要更新以及修改的资料一次操作完毕,但实际上并不可行。

目前主要有两种方式实现ACID:第一种是Write ahead logging,也就是日志式的方式。第二种是Shadow paging。

相关条目

外部连结


数据库管理系统(DBMS)查看  讨论  编辑  历史 )

概念
数据库 • 数据库模型 • Database storage • 关系模型 • 分布式数据库 • ACID • 空值
关系数据库 • 关系代数 • 关系演算 • 数据库正规化 • 参照完整性 • 关系数据库管理系统 
主键, 外来键, 代理主键, 超键值, 候选键 

Objects
触发器 • 视图 • 数据库表 • 指标 • Log • Transaction • 数据库索引 
存储程序 • Partition

SQL
Select • Insert • Update • Merge • Delete • Join • Union • Create • Drop
  Begin work • Commit • Rollback • Truncate • Alter

数据库管理系统的实施

实施类型
Relational • Flat file • Deductive • Dimensional • 阶层式 • 对象数据库 • Object relational • Temporal • XML data stores

数据库产品
对象型 (对比) • 关系型 (对比)

数据库成分
Query language • Query optimizer • Query plan • ODBC • JDBC


Google 

! __







Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History