数据库—封锁的粒度

封锁的粒度

封锁对象的大小称为封锁粒度。

封锁对象可以是逻辑单元,也可以是物理单元,其中,逻辑单元包括:属性值、属性值的集合、元组、关系、索引项、整个索引、整个数据库等,物理单元包括:页(数据页或索引页)、物理记录等。

封锁粒度与系统的并发度和并发控制的开销密切相关。因此,选择封锁粒度要遵循一定的原则:封锁的粒度越大,数据库所能够封锁的数据单元就越少,并发度就越小,系统开销也越小;封锁的粒度越小,并发度较高,但系统开销也就越大。

多粒度封锁

在一个系统中同时支持多种封锁粒度供不同的事务选择。

选择封锁粒度需同时考虑封锁开销和并发度两个因素, 适当选择封锁粒度。

例如:需要处理大量元组的用户事务:以关系为封锁单元

          需要处理多个关系的大量元组的用户事务:以数据库为封锁单位

          只处理少量元组的用户事务:以元组为封锁单位


介绍多粒度封锁之前要先了解多粒度树的概念:

多粒度树:

1.以树形结构来表示多级封锁粒度;

2.根结点是整个数据库,表示最大的数据粒度;

3.叶结点表示最小的数据粒度

如下图为四级粒度树:

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值