当前位置: 首页 > 面试题库 >

请简述为什么要使用数据库的事务

应俊爽
2023-03-14
本文向大家介绍请简述为什么要使用数据库的事务相关面试题,主要包含被问及请简述为什么要使用数据库的事务时的应答技巧和注意事项,需要的朋友参考一下

数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。

原子性(Atomic)(Atomicity) 事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的。如果系统只执行这些操作的一个子集,则可能会破坏事务的总体目标。原子性消除了系统处理操作子集的可能性。

一致性(Consistent)(Consistency) 事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。某些维护一致性的责任由应用程序开发人员承担,他们必须确保应用程序已强制所有已知的完整性约束。例如,当开发用于转帐的应用程序时,应避免在转帐过程中任意移动小数点。

隔离性(Insulation)(Isolation) 由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为隔离性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。当事务可序列化时将获得最高的隔离级别。在此级别上,从一组可并行执行的事务获得的结果与通过连续运行每个事务所获得的结果相同。由于高度隔离会限制可并行执行的事务数,所以一些应用程序降低隔离级别以换取更大的吞吐量。

持久性(Duration)(Durability) 事务完成之后,它对于系统的影响是永久性的。该修改即使出现致命的系统故障也将一直保持。

 类似资料:
  • 随着互联网技术的高速发展,预计2020 年底全世界网民的数量将达到 50 亿。网民数量的增加带动了网上购物、微博,网络视频等产业的发展。那么,随之而来的就是庞大的网络数据量。 大量的数据正在不断产生,那么如何安全有效地存储、检索,管理它们呢?于是对数据的有效存储、高效访问、方便共享和安全控制等问题成为了信息时代一个非常重要的问题。 使用数据库可以高效且条理分明地存储数据,它使人们能够更加迅速和方便

  • 我有一个Spring Boot JPA应用程序,在Consor注册为微服务: 我的申请。yml看起来像这样: 但是,当concur联系endpoint时,我的应用程序中会抛出以下: “不允许主机‘172.17.0.1’连接到此MySQL服务器”。 到底发生了什么,为什么会有连接尝试?

  • 任何数据库都需要备份,备份数据是维护数据库必不可少的操作。 在学习如何备份数据之前,我们先了解一下数据库备份是为了应对哪些场景?为什么数据库需要备份? 备份就是为了防止原数据丢失,保证数据的安全。当数据库因为某些原因造成部分或者全部数据丢失后,备份文件可以帮我们找回丢失的数据。因此,数据备份是很重要的工作。 常见数据库备份的应用场景如下。 数据丢失应用场景: 人为操作失误造成某些数据被误操作 软件

  • 问题内容: 谁能帮助解释为什么JNDI应该是公开数据库/ jms等服务的首选方式? 我遇到的所有帖子都谈到了不必加载特定的驱动程序管理器,从连接池中受益等优点,但是可以通过在属性文件中指定驱动程序管理器并使用反射来轻松实现。 连接池也可以通过将正确的实现方式通过spring或其他方式连接到应用Bean中来实现。 那么,为什么使用JNDI会更好呢? 问题答案: 当您必须在不同环境之间移动应用程序时,

  • 本文向大家介绍请简述一下如何优化数据库?相关面试题,主要包含被问及请简述一下如何优化数据库?时的应答技巧和注意事项,需要的朋友参考一下 数据库的优化可以从四个方面来优化 1.从结构层: web服务器采用负载均衡服务器,mysql服务器采用主从复制,读写分离 2.从储存层: 采用合适的存储引擎,采用三范式 3.从设计层: 采用分区分表,索引,表的字段采用合适的字段属性,适当的采用逆范式,开启mysq

  • 本文向大家介绍为什么我们需要一个数据库,包括了为什么我们需要一个数据库的使用技巧和注意事项,需要的朋友参考一下 数据库是数据的集合,通常以电子形式存储。数据库的设计通常是为了使其易于存储和访问信息。 好的数据库对任何公司或组织都至关重要。这是因为数据库存储了有关公司的所有相关详细信息,例如员工记录,交易记录,工资详细信息等。 数据库重要的各种原因是- 管理大量数据 数据库每天存储和管理大量数据。使