并发控制五(封锁的粒度)

封锁粒度影响数据库并发度和控制开销。多粒度封锁提供灵活的选择,通过多粒度树实现不同事务的封锁。意向锁用于提高封锁检查效率,包括IS、IX和SIX锁,确保并发操作的正确性。
摘要由CSDN通过智能技术生成

封锁对象的大小称为封锁粒度。封锁对象可以是逻辑单元,也可以是物理单元。以关系数据库为例,封锁对象可以是这样一些逻辑单元:属性值、属性值的集合、元组、关系、索引项、整个索引直至整个数据库;也可以是这样一些物理单元:页(数据页或索引页)、物理记录等。

封锁粒度与系统的并发度和并发控制的开销密切相关。直观地看,封锁的粒度越大,数据库所能够封锁的数据单元就越少,并发度就越小,系统开销也越小;反之,封锁的粒度越小,并发度越高,但系统开销也就越大。

一个系统中同时支持多种封锁粒度供不同的事务选择是比较理想的,这种封锁方法称为多粒度封锁。选择封锁粒度应该考虑封锁开销和并发度这两个因素。

  • 多粒度封锁

多粒度封锁,首先要定义多粒度树。多粒度树的根节点是整个数据库,表示最大的数据粒度。叶节点表示最小的数据粒度。

如下是一个三级粒度树。根节点为数据库,数据库的子节点为关系,关系的子节点为元组。

还可以定义四级粒度树,如数据库、数据分区、数据文件、数据记录。

多粒度封锁协议允许多粒度树中的每个

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值