什么是事务处理?解释事务的属性(DBMS)
事务是包含一组操作的数据库处理单元。例如存款、余额查询、订票等。
每个事务都以开始事务的分隔符开始,以结束事务的分隔符结束。这两个定界符内的一组操作构成一个事务。
main(){ begin transaction
} end transaction
操作
交易有两个基本操作 -
Read(x)− 将数据项 x 从数据库加载到内存。{数据库存在于硬盘中}。
Write(x) − 更新内存中的数据项 x 并将其存储在数据库中。
交易属性
数据库系统确保 ACID 属性,如下所述 -
原子性- 事务操作全部完成或不完成。
一致性- 事务从一个一致(正确)状态转移到另一个一致状态。
隔离- 事务与其他事务隔离。即一个事务不受另一个事务的影响。尽管多个事务并发执行,但它必须看起来好像事务是串行运行的(一个接一个)。
耐用性- 交易的结果是永久性的,即结果永远不会因后续故障而丢失,耐用性是指持久性,即永久性。
示例
考虑转移卢比的交易。150从账户A到账户B。交易步骤如下 -
读A
A=A-150
Write(A)
Read(B)
B=B+150
Write(B)
如果事务在步骤 4 失败,然后由于部分修改而出现不一致,则需要原子性。这是因为 B 的值没有更新。
一致性要求- A 和 B 的总和在交易前后应该相同。
隔离要求- 如果另一个事务在步骤 4 期间访问数据,则存在不一致,因为 B 的值直到现在还没有更新。
以上是 什么是事务处理?解释事务的属性(DBMS) 的全部内容, 来源链接: utcz.com/z/338756.html