from:http://zh.wikipedia.org/wiki/ACID
ACID,是指在数据库管理系统(DBMS)中事务所具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。
在数据库系统中,一个事务是指由一系列数据库操作组成的一个完整的逻辑过程。例如银行转帐,从原账户扣除金额,以及向目标账户添加金额,这两个数据库操作的总和构成一个完整的逻辑过程,不可拆分。这个过程被称为一个事务,具有ACID特性。ACID的概念在ISO/IEC 10026-1:1992文件的第四段內有所說明。
<script type="text/javascript"> //<![CDATA[ if (window.showTocToggle) { var tocshowtext="显示" ; var tochidetext="隐藏" ; showTocToggle(); } //]]> </script>
四大特性
- 原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回復(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
- 一致性:在事务开始之前和事务结束以后,数据库的完整性限制没有被破坏。
- 隔离性:两个事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间某一时刻的数据。
- 持久性:在事务完成以后,该事务对数据库所作的更改便持久地保存在数据库之中,并不会被回復。
實现
由於一項操作通常會包含許多子操作,而這些子操作可能會因為硬體的損壞或其他因素產生問題,要正確實现ACID並不容易。ACID建議資料庫將所有需要更新以及修改的資料一次操作完畢,但實際上並不可行。
目前主要有兩種方式實现ACID:第一種是Write ahead logging,也就是日誌式的方式。第二種是Shadow paging。
分享到:
相关推荐
事务必须具备四大特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID。 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客...
5. **数据库5章**:数据库事务管理是关键内容,会讲述事务的概念、特性(ACID属性)、并发控制(锁定机制、多版本并发控制MVCC)以及事务的提交与回滚。 6. **数据库6章**:数据库安全性与完整性是这一章的重点,会...
此外,事务的ACID特性(原子性、一致性、隔离性和持久性)是必须遵循的原则,这要求在Java代码中实现相应的逻辑保证。 综上所述,Java模拟数据库事务是一个综合性的任务,涵盖了网络通信、并发控制、设计模式等多个...
事务具备ACID特性: - **原子性**(Atomicity):事务中的所有操作要么全部成功,要么全部失败,不能部分执行。 - **一致性**(Consistency):事务的执行使得数据库从一种一致状态转换到另一种一致状态。 - **隔离...
事务具备四个关键特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)以及持久性(Durability),通常被称为ACID特性。 1. **原子性**:指事务内的所有操作要么全部完成,要么一个也不执行。...
事务具备四个核心特性,通常被称为ACID特性: 1. **原子性(Atomicity)**:事务中的所有操作被视为一个不可分割的整体,要么全部成功执行,要么全部失败并回滚。这意味着事务中的每个操作都必须成功,否则整个事务...
- **数据库事务管理**:ACID属性、日志技术。 - **数据库设计**:数据依赖理论、模式规范化。 - **索引与查询优化**:索引类型、查询优化策略。 - **分布式数据库**:分布特性、查询处理、事务管理。 - **数据库性能...
【数据库基础概论】 在大连理工大学的这门数据库课程中,你将系统地学习到...这些PPT课件将为初学者提供全面而系统的数据库学习路径,从基本概念到高级主题,帮助你建立起扎实的数据库理论基础,并具备实际操作能力。
数据库事务具备四大基本特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),通常被称为ACID特性。 - **原子性**:事务中的所有操作要么全部完成,要么一个也不完成。...
- ACID(原子性、一致性、隔离性、持久性):数据库事务的四大特性。 6. **数据库性能优化**: - 索引:提升查询速度,但也会影响写操作。 - SQL优化:避免全表扫描,合理使用JOIN和子查询。 - 分区和分片:...
- 事务(Transaction):数据库操作的基本单元,具有ACID特性(原子性、一致性、隔离性、持久性)。 - 撤销(Rollback)和提交(Commit):保证事务的原子性。 - 锁机制:共享锁(读锁)和独占锁(写锁),用于...
2. **分布式数据库的特性**: - **数据分布**:数据可以分布在多个节点上,每个节点有自己的局部数据库。 - **位置透明性**:用户无需关心数据在哪个节点,只需按逻辑地址访问。 - **复制与冗余**:为了提高可用...
4. **数据库事务与并发控制**:讨论事务的ACID特性(原子性、一致性、隔离性和持久性),以及并发操作可能导致的问题如死锁和脏读,并介绍解决方案如封锁协议和乐观并发控制。 5. **数据库恢复技术**:探讨数据库的...
10. **分布式数据库和云存储**:探讨分布式数据库的概念,如数据分区、复制和分布式事务处理,以及现代云数据库的特性和服务。 通过学习这门课件,学生们将能够系统地掌握数据库理论,并具备设计、实施和管理高效...
7. 数据库事务和并发控制:理解事务的ACID特性(原子性、一致性、隔离性、持久性),以及死锁的概念和解决方法。 8. 数据库性能优化:索引的创建与管理,查询优化,存储过程的编写和调优,都是提高数据库性能的关键...
7. **事务处理和并发控制**:讨论数据库事务的基本特性(ACID属性),以及并发环境下如何保证数据的一致性和完整性,如锁机制、乐观锁和悲观锁的对比。 8. **备份与恢复**:学习如何制定备份策略,理解完整备份、...
2. **ACID特性**:SQL数据库支持事务处理,具备原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)等四大特性,确保数据的完整性和一致性。 3. **强数据类型**:SQL数据库具有...
课件可能涵盖分片、复制、分布式事务等分布式数据库的特性。 9. **数据库应用开发**:结合实际案例,可能教授如何在Web或移动应用中集成数据库,如使用PHP、Java或Python与数据库进行交互。 10. **数据库新技术**...
3. **数据库管理系统**:介绍各主流数据库系统的特性和应用场景,比如Oracle的RMAN备份、SQL Server的事务日志管理等。 4. **事务处理**:理解事务的ACID属性,以及死锁、活锁的概念和解决方案。 5. **数据库性能...