分布式数据库学习--分布式并发控制

本文探讨分布式数据库中的并发控制,旨在确保大规模并行操作下数据的正确更新。介绍了并发控制的目标,分类,包括悲观算法(如加锁)和乐观算法(如时间戳),并详细阐述了加锁和时间戳的并发控制算法执行步骤。悲观算法通过锁保证数据串行化,而乐观算法则在最后阶段验证操作的有效性,以提高并发效率。
摘要由CSDN通过智能技术生成

前言


并发控制理论在分布式计算领域是一块较为重要的内容。了解和掌握好这块理论知识,将有助于我们在工作实践中解决一些复杂的难题。最近笔者学习了分布式数据库系统原理书中的分布式并发控制的相关内容,本文借此机会总结总结。

并发控制的目标


在往常,我们一提到并发这个词,就会马上联想到多线程这个词。这是因为我们在平时的开发工作中经常有遇到多线程的场景。但是回过头来看这个词,其实并发的场景绝不仅限于多线程操作,另外一个典型的应用场景就是数据库里的事务更新。现在一个核心的问题来了,并发控制的目的是为了什么?它有什么作用?我们为什么要引入这样的控制机制呢?这些问题归纳起来就是一个答案:在大规模并行操作下,保证数据的正确更新。也就是说如果我们不加以进行控制,是可能发生数据更新异常的情况,比如说操作乱序、操作丢失等等的情况。

并发控制机制的分类


OK,那么并发控制机制中到底有哪些机制呢?在我们平常熟悉的多线程编程模型里,我们提到最多的控制技巧就是两种:1.悲观方式,即锁控制机制,从比较粗粒度的锁(synchronized)到细粒度的锁(ReadLock、WriteLock)。2.乐观方式,即加时间戳方式。加时间戳的方式是为了保证操作的有序性。

但是在并发控制理论体系内,对于并发控制机制进行了更为细致的分类,主要为以下的一些分类:

首先它同样有分为悲观算法乐观算法

悲观算法:悲观算法包括基于加锁,基于排序以及混合前2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值