ACID


ACID (正體)

Free Web Hosting with Website Builder

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

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

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

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

实现

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

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

相关条目

外部链接


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

概念
数据库 • 数据库模型 • 资料库储存结构 • 关系模型 • 分布式资料库 • ACID • NULL值
关系数据库 • 关系代数 • 关系演算 • 资料库正规化 • 参照完整性 • 关系数据库管理系统 
主键 • 外来键 • 代理主键 • 超键值 • 候选键 

资料库物件
触发程序 • 检视表 • 资料表 • 指标 • 交易记录档 • 交易 • 数据库索引 
预存程序 • 资料库分割

SQL
分类:资料定义语言 • 资料操纵语言 • 资料控制语言
指令:SELECT • INSERT • UPDATE • MERGE • DELETE • JOIN • UNION • CREATE • DROP • Begin work • COMMIT • ROLLBACK • TRUNCATE • ALTER
安全: SQL Injection • 参数化查询

数据库管理系统的实施

实施类型
关联式资料库 • 档案型资料库 • Deductive • 维度化资料库 • 阶层式 • 对象数据库 • 物件关联式资料库 • Temporal • XML资料库

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

数据库成分
查询语言 • 查询优化器 • 查询计划 • ODBC • JDBC • OLE DB








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