数据库系统概论 第十一章 并发控制(3)小结 封锁粒度 封锁粒度与系统的并发度和并发控制的开销的关系 多粒度封锁 什么时多粒度封锁 多粒度封锁的方法 意向锁 三种意向锁 相容矩阵

本文详细介绍了封锁粒度的概念,封锁对象包括逻辑和物理单元,如元组、关系、页等。封锁粒度的选择直接影响并发度和系统开销。封锁粒度越大,并发度越小,开销越小;反之,粒度越小,并发度越高,开销越大。多粒度封锁允许事务选择不同封锁粒度,通过意向锁(IS、IX、SIX)提高加锁检查效率,减少开销。这种机制在实际数据库管理系统中广泛应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第二十三讲 封锁的粒度
封锁粒度
封锁对象的大小称为封锁粒度(Granularity)
封锁的对象:逻辑单元,物理单元
例:在关系数据库中,封锁对象:
逻辑单元: 属性值、属性值集合、元组、关系、索引项、整个索引、整个数据库等
物理单元:页(数据页或索引页)、物理记录等

选择封锁粒度的元组
封锁粒度与系统的并发度和并发控制的开销密切相关
封锁的粒度越大,数据库所能够封锁的数据单元就越来越少,并发度就越小,系统开销也越小。
封锁的粒度越小,并发度越高,但是系统开销也就越大。

封锁粒度越小,并发度越高。

若封锁粒度是数据页,事务T1需要修改元组L1,则T1必须对包含L1的整个数据页A加锁。如果T1对A加锁后事务T2要修改A中元组L2,则T2被迫等待,直到T1释放A。
如果封锁粒度是元组,则T1和T2可以同时对L1和L2加锁,不需要互相等待,提高了系统的并行度。
又如,事务T需要读取整个表,若封锁粒度是元组,T必须对表中的每一个元组加锁,开销极大
如果说封锁粒度是关系,T3只需要一次加锁
封锁粒度越小,封锁开销越大

多粒度封锁(Multiple Granularity Lockin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习记录wanxiaowan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值