数据库的事务是为了保证几条sql能同时执行成功,如果其中一部分产生错误会回滚操作。保证数据的安全。
但是现在的系统数据层已经不只是依靠数据库来处理数据了,往往会加入缓存系统。对数据的处理产生了干扰,已经不全由数据库来决定了。
例如:
public void addGold(User user1,User user2,int gold){ user1.setGold(user1.getGold+gold); user2.setGold(user2.getGold-gold); dao.updateUser(user1); dao.updateUser(user2); }
采用事物是能保证这个业务不会出错。
但是现在大部分 系统都会用aop的方式在updateUser上加入缓存操作。而不是手动控制update
所以updateUser的时候在修改数据库之前其实已经修改了缓存里面的值。也就是说事物控制不了数值的正确性了。出现问题也没办法回滚。
这确实是一个复杂的问题,因为数据出现在缓存系统和数据库系统两个地方。 数据库系统就算有事物可以回滚,但是不会影响到缓存系统里面的数据。也就是说就算数据库操作正常,在缓存的时候有可能出错导致缓存的数据与数据库数据不一致的问题。
针对这个问题,当然也是有解决办法的。就是对业务数据针对的处理。重要数据不仅仅要确保数据库里面能回滚。缓存系统也要能同步回滚。两者同时操作成功否则同时回滚。
而对于大部分其他一般的业务,数据库事务作用已经名存实亡了。
相关推荐
2. 并发控制:在多用户环境下,数据库系统需要防止数据不一致,如死锁检测和避免、锁定机制和多版本并发控制(MVCC)。 七、数据库安全性与备份恢复 1. 安全性:包括用户认证、权限控制、审计日志等,确保只有授权...
### 数据库系统事务详解 #### 事务概念 事务在数据库管理中扮演着极其重要的角色,它是应用程序中的一个逻辑工作单元,通常包含一系列操作。这些操作作为一个整体被执行:要么全部完成,要么全部都不执行。事务的...
本学期分组完成“教学事务管理系统”,具体要求如下: 1. 系统必须是在B/S结构下实现。 2. 数据库在原理1的School数据库基础下自行修改,只能添加,不能删除。 3. 系统具有为不同的角色(系统管理员、教师、学生)...
数据库技术是数据库系统工程师考试的核心组成部分,包括数据库技术基础、关系数据库、事务管理、数据库标准语言(SQL)、数据库设计等方面。 数据库技术基础 数据库技术基础包括数据库的概念、数据库的类型、...
本课件涵盖了数据库系统原理的基础知识,包括数据库系统概论、实体关系模型、关系模型、SQL、完整性约束、事务处理、并发控制、数据库系统架构、新应用、XML等方面的内容。 数据库系统概论 数据库系统是一个集合了...
数据库系统实现是数据库领域的核心议题,它涉及到如何将理论性的数据模型转化...通过阅读《数据库系统实现》,读者不仅可以了解数据库设计的理论,还能掌握实际操作和优化数据库的技巧,从而成为一名真正的数据库高手。
本资源是数据库系统概论期末考试试题,涵盖了数据库系统的基础知识、关系数据库、数据库设计、数据库管理系统、SQL语言、数据安全、事务处理、并发控制、数据库恢复等方面的知识点。 (一)数据库系统基础知识 1. ...
《数据库系统及应用》是崔巍教授在高等教育出版社出版的一本教材,主要涵盖了数据库系统的基础理论、设计与应用。这本教材深入浅出地讲解了数据库领域的核心概念,包括SQL语言,是学习数据库管理和开发的重要参考...
数据库系统概论是计算机科学中的一个核心课程,主要探讨如何有效地存储、管理和检索数据。这份电子教案以PPT格式提供,适用于教师授课和学生自学,是深入理解数据库理论和技术的重要资源。 1. 数据库概念: 数据库...
最后,随着大数据和云计算的发展,现代数据库系统工程师还需要对分布式数据库、云数据库有深入了解。例如,理解Hadoop、Spark等大数据处理框架,以及Amazon RDS、Google Cloud SQL等云数据库服务的工作原理。 ...
本资源摘要信息将对数据库系统的基本概念、数据库管理系统、数据模型、数据库设计、数据库恢复、事务处理等方面进行详细的总结和解释。 一、数据库系统的基本概念 * 数据库系统是长期存储在计算机内、有组织、可...
数据库系统是信息技术领域中的核心部分,它负责存储、管理和检索数据,为各种应用程序提供支持。《数据库系统导论》作为一本经典教材,已经更新至第七版,并提供了中文版,这无疑为中国读者理解复杂的数据库概念提供...
数据库系统是信息技术中的核心组成部分,尤其对于专升本学习者来说,掌握数据库系统的基本概念、原理及应用至关重要。本题库包含多个PDF文档,全面覆盖了数据库相关的知识点,旨在帮助学生进行有效复习和刷题,以...
学习数据库系统概念不仅需要掌握SQL语言,还需要理解关系数据库的基本原理,如范式理论(第一范式、第二范式、第三范式和BCNF),事务处理,以及索引优化等。这些知识点都是数据库管理员、数据分析师和软件开发者...
并发控制是数据库系统中的另一个重要概念,可串行化调度确保并发事务执行的结果与某个串行调度产生的结果一致,保证数据的一致性和完整性。多粒度锁机制则允许事务按照不同级别的封锁来访问数据,从粗粒度到细粒度,...
数据库系统是信息技术中的核心组成部分,它负责存储、管理和检索数据,是各类应用系统的基础。《数据库系统全书》是一本全面介绍数据库系统理论与实践的教程,旨在帮助读者深入理解数据库的工作原理和应用技巧。PDG...
【数据库系统工程师-06事务和锁】 在数据库系统中,事务和锁是核心概念,它们对于确保数据的完整性和一致性至关重要。事务是一系列数据库操作的逻辑单元,它具有四个关键特性,通常被称为ACID特性。 1. **原子性...
这些系统需要处理大规模数据和高并发访问,NewSQL数据库系统可以提供高性能和高可用性,满足这些系统的需求。 在电商平台中,NewSQL数据库系统可以作为订单系统、库存系统、物流系统等的数据库系统,提供高性能和高...