数据库系统原理---并发一致性问题

Posted yjxyy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库系统原理---并发一致性问题相关的知识,希望对你有一定的参考价值。

并发一致性问题

??在并发环境下,事务的隔离性很难保证,因此会出现很多并发一致性的问题。

丢失修改

??T1和T2两个事务都对一个数据进行修改,T1先修改,T2随后修改,T2的修改覆盖了T1的修改。

技术图片

读脏数据

??T1修改一个数据,T2随后读取这个数据。如果T1撤销了这次修改,那么T2读取的数据就是脏数据。

技术图片

不可重复读

??T2读取一个数据,T1对该数据做了修改。如果T2再次读取这个数据,此时读取的结果和第一次读取的结果不同。

技术图片

??T1读取某个范围的数据,T2在这个范围内插入新的数据,T1再次读取这个范围的数据,此时读取的结果和第一次读取的结果不同。

技术图片

??产生并发不一致性的原因是破坏了事务的隔离性,解决方法是通过并发控制来保证事务的隔离性。并发控制可以通过封锁来实现,但是封锁操作需要用户自己来进行控制,相当复杂。数据库管理系统提供了事务的隔离级别,让用户以一种更轻松的方式处理并发一致性问题。

以上是关于数据库系统原理---并发一致性问题的主要内容,如果未能解决你的问题,请参考以下文章

硬核!万字神文精解高并发高可用系统实战,分布式系统一致性文档

数据库管理 - 数据库系统原理

再谈mysql锁机制及原理—锁的诠释

再谈mysql锁机制及原理—锁的诠释

再谈mysql锁机制及原理—锁的诠释

《从Paxos到ZooKeeper 分布式一致性原理与实践》读书笔记