交易2024 年 8 月 28 日 | 阅读 2 分钟
示例:假设一家银行的员工将 800 卢比从 X 的账户转入 Y 的账户。这个小小的交易包含几个低级任务。 X 账户 Y 账户 事务的操作以下是事务的主要操作: Read(X):Read 操作用于从数据库读取 X 的值并将其存储在主内存的缓冲区中。 Write(X):Write 操作用于将缓冲区的值写回数据库。 让我们举一个从账户扣款的例子,该例子包含以下操作: 假设在事务开始前 X 的值为 4000。
但是,由于硬件、软件或电源等故障,事务可能在完成集合中的所有操作之前失败。 例如:如果在上述事务中,扣款事务在执行完第二个操作后失败,那么 X 的值将仍然是数据库中的 4000,这是银行无法接受的。 为了解决这个问题,我们有两种重要的操作: Commit(提交):用于永久保存已完成的工作。 Rollback(回滚):用于撤销已完成的工作。 下一主题DBMS 事务属性 |
事务属性 从事务的定义可以看出,单个事务可能包含一系列操作,这些操作在数据库上内部执行。一旦提交了事务,它应该执行所有属于它的操作,并且...
7 分钟阅读
引言 在数据库系统中,保持数据一致性被主要认为是至关重要的,尤其是在并发事务的情况下。确保同时执行多个事务的结果与有效顺序顺序匹配。它防止了冲突并维护了数据库的完整性,从而保障了...
5 分钟阅读
引言 事务是一组在数据库上执行的操作,这些操作被视为作为一个整体执行,但在其执行过程中会经历几个阶段。不同的事务状态如下。活动状态 这是每个事务的第一个状态...
阅读 3 分钟
序列化图用于测试调度器的可串行化性。假设有一个调度 S。对于 S,我们构造一个称为优先图的图。该图具有一对 G = (V, E),其中 V 是一组顶点,E 是一组...
阅读 2 分钟
引言 众所周知,有效理解数据库管理系统(DBMS)的各种故障类型是维护数据完整性和确保系统顺畅运行的关键要素。故障分类有助于数据库管理员轻松识别潜在的...
5 分钟阅读
引言 众所周知,可恢复性在维护数据库系统的完整性方面发挥着重要作用。它还确保数据库即使在系统崩溃、断电或软件故障的情况下也能恢复到稳定一致的状态。尽管...
5 分钟阅读
调度 从一个事务到另一个事务的操作序列称为调度。它用于保留每个单独事务中操作的顺序。1. 串行调度 串行调度是一种调度,其中一个事务在...之前完全执行
阅读 2 分钟
冲突可串行化调度 如果在交换非冲突操作后,可以将其转换为串行调度,则该调度称为冲突可串行化。如果调度与串行调度冲突等价,则该调度将是冲突可串行化的。冲突操作 如果满足所有条件,则两个操作将冲突:两者...
阅读1分钟
死锁是指两个或多个事务无限期地等待对方释放锁定的情况。死锁被认为是 DBMS 中最令人担忧的并发症之一,因为没有任何任务能够完成,并且一直处于等待状态。对于...
阅读 8 分钟
日志是记录的序列。每个事务的日志都保存在某个稳定存储中,以便在发生任何故障时可以从中恢复。如果对数据库执行了任何操作,那么它将被记录在日志中。但是...
阅读9分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India