ACID
代表“Atomicity, Consistency, Isolation, Durability”。ACID 这一缩写定义了 数据库 必须具备的四项特性,以确保数据完整性。具体来说,这些特性适用于向数据库写入数据的数据库操作,例如插入、更新和删除 记录。
下面介绍 ACID 的四个要素:
1. 原子性
原子性保证每个事务都是“全有或全无”的事件。换句话说,事务要么完全成功,要么完全失败。原子操作通过禁止部分事务来防止数据损坏。如果某项操作无法完成,就会“回滚”到之前的状态,就好像从未发生过一样。
2. 一致性
一致性确保只有有效数据才会写入数据库。例如,数据库不会接受无效事务或无法识别的数据。此外,数据库还可能使用“双写缓冲区”临时存储新事务。如果数据库或主机系统意外 崩溃,就可以从 缓冲区 恢复数据。
3. 隔离性
隔离性确保每个事务都单独处理。一些数据库每秒多次读取和写入 数据,这可能需要并发事务。即使事务同时进行,它们仍然可以彼此隔离。例如,如果一个操作失败,也不会影响同时进行的其他操作。隔离性对数据库安全也非常重要,因为它可以防止一个事务中的数据被另一个事务看到。
4. 持久性
持久性保证事务处理完成或“提交”到数据库后,数据会被存储。它要求将数据写入 非易失性存储器,这样即使 应用程序 崩溃或发生断电,事务也不会丢失。
虽然数据库软件有助于确保数据库的持久性,但硬件同样重要。例如,如果存储设备发生故障,RAID 存储配置可以提供冗余。如果主电源不可用,UPS 电池备份可以维持电力,从而防止数据丢失。
NOTE:“Acid”(小写)是一项 Web 浏览器 测试,用于检查浏览器是否支持特定的 HTML 标签和 CSS 规则。最近的一项测试 Acid3 于 2008 年由 Web Standards Project 组织制作。
测试你的知识