数据库原理 封锁的粒度
1、封锁粒度是什么?
封锁对象的大小称为封锁的粒度
封锁对象:逻辑单元、物理单元
2、选择封锁粒度的原则?
封锁粒度和系统的并发度、系统的开销密切相关
- 封锁的粒度越大 数据库能够封锁的数据单元就越少,并发度就越小,系统开销也就越小
- 封锁的粒度越小 数据库能够封锁的数据单元就越多,并发度就越高,系统开销也就越大
因此封锁粒度是一把双刃剑,所以在一个系统当中如果能够提供多种封锁粒度以便不同的事务按照自己的需求选择就比较完美了
这就是所谓的:多粒度封锁
3、具体如何选择封锁粒度呢?
- 需要处理大量元组的用户事务,以关系为封锁单元
- 需要处理多个关系的大量元组的用户事务,以数据库为封锁单元
- 只是处理少量元组的用户事务,以元组为封锁单元
4、多粒度封锁
- 以树形结构来表示多级封锁粒度
- 根节点是整个数据库,表示最大的数据粒度
- 叶节点是最小的数据粒度
三级粒度树 四级粒度树
5、多粒度封锁协议
- 允许粒度树中的每一个节点独立的被加锁
- 对一个节点加锁,意味着这个节点的所有后裔节点也同样被加上相同类型的锁
- 因此多粒度封锁中一个数据对象可能以两种方式封锁:显式封锁、隐式封锁
6、显式封锁和隐式封锁
- 显式封锁: 直接加到数据对象上的封锁
- 隐式封锁:是该数据对象没有独立加锁,是由于其 上级结点加锁而使该数据对象加上了锁
- 显式封锁和隐式封锁的效果是一样的
显然这种封锁的效率很低,因此引入了一种新型封锁-意向锁
7、意向锁的目的
- 目的是简化加锁时系统的检查过程,提高了对某个数据对象加锁时系统的检查效率
8、意向锁的类型
- 意向共享锁(IS锁)
- 意向排它锁(IX锁)
- 共享意向排它锁(SIX锁):当我们想读一个数据对象,并且更新他的后代节点需要加SIX锁
9、意向锁的封锁的相容性
- 要考虑隐式锁的因素
- 要考虑意向锁并不是给所有的后代节点都加锁
- 要考虑不同后代的因素,只要有可能不冲突就可以满足意向锁的封锁请求,如果冲突了,系统会在事务给后代节点加锁冲突的时候拒绝他的请求
10、锁的强度
锁的强度是指他对其它锁的排斥程度
一个事务在申请封锁的时候以强锁代替弱锁时安全的,反之则不然。
11、具有意向锁的多粒度封锁方法的特点
- 申请封锁应该自上而下
- 释放封锁应该自下而上
优点:
12、小结+思考
13、本章总结
数据库原理 封锁的粒度相关推荐
- 《数据库原理实验指导书》
<数据库原理实验指导书> 河南科技大学软件学院 目录 实验规则 基本实验方法 实验环境 实验一 数据定义 实验二 数据更新 实验三 数据查询-简单查询和连接查询 实验四 数据查询-分组查询 ...
- 南京工程学院 数据库复习(数据库系统概论复习 及 数据库原理与应用样题)
一.数据库系统概论 1.1 百度文库 复习文档(需下载券) <数据库系统概论>(王珊.第五版) ★第一章 绪论 v 本章内容:数据库系统概述.数据模型.数据库系统结构 v 本章主要考点 ...
- 【渝粤题库】陕西师范大学200781 数据库原理及应用 作业
<数据库原理及应用>作业 一.选择题 1.在数据管理技术的发展过程中,经历了人工管理阶段.文件系统阶段和数据库系统阶段.在这几个阶段中,数据独立性最高的是____阶段. 数据库系统 B.文 ...
- (数据库系统概论|王珊)第十一章并发控制-第五、六、七节:并发调度的可串行性、两段锁协议和封锁的粒度
文章目录 一:可串行化调度 二:冲突可串行化调度 (1)冲突操作 (2)可串行化调度的充分条件:冲突可串行化 三:两段锁协议 四:封锁的粒度 (1)概念 (2)选择封锁的原则 (3)多粒度封锁 A:多 ...
- 【数据库原理实验(openGauss)】实验报告
<数据库系统原理实验>报告 文章目录 <数据库系统原理实验>报告 一.实验课程性质和教学目标 二.实验课程教学基本要求 三.实验教学内容 实验一 认识DBMS系统 (一)实验目 ...
- 数据库原理概论理论知识点总结
数据库概论 一.绪论 1.1 数据库系统概述 1.2 数据模型 1.3 数据库系统的结构 二.关系数据库 2.1 关系数据结构及形式化定义 2.2 关系操作 2.3 关系的完整性 2.4 关系代数 三 ...
- 数据库原理及应用期末复习汇总(附某高校期末真题试卷)
文章目录 <数据库原理及应用>试题1 一.选择题 二.填空 三.简答题 四.T-SQL综合题 五.综合应用题 <数据库原理及应用>试题2 一.选择题 二.填空 三.简答题 四. ...
- 沈师 数据库原理 PTA 选择题答案
无答案版链接:https://blog.csdn.net/a2272062968/article/details/117712085 下面对数据模型的不正确叙述是( ). A. 逻辑层次上的数据模型有 ...
- 数据库原理与应用课程知识点
数据库原理与应用课程知识点 文章目录 数据库原理与应用课程知识点 **第一章 绪论** 数据.数据库.数据库管理系统.数据库系统的概念 数据管理技术发展的三个阶段及各阶段的优缺点 概念模型中的基本术语 ...
- [渝粤教育] 南昌航空大学 数据库原理 参考 资料
教育 -数据库原理-章节资料考试资料-南昌航空大学[] 引言 1.[多选题]在数据库界曾经获得过图灵奖学者包括( ) A.Charles W. Bachman B.Edgar F. Codd C.Ja ...
最新文章
- 自己架设windows升级服务器
- varnish安装及简单配置
- 老年机按键串号_老人机怎么解除*号键解锁
- matebook14支持触摸屏吗_华为MateBook 14 2021发布,触摸屏成标配
- Hitpoint:外贸企业如何选择合适的ERP系统
- 九章算法强化班 - 课程大纲
- Activity嵌套fragment大全,activity加载单个fragment,TabLayout+ViewPager实现多个fragment滑动效果
- 客服端与服务器之间传输信息,QT实现客服端和服务器之间消息和文件交互
- php对pdf关键字定位,如何在PDF文件中快速查找关键字
- Gccgo in GCC 4.7.1[翻译]
- 简述Handler机制原理
- matlab单字音频合成,基于MATLAB的音频解析与合成
- kali 暴力破解 WiFi破解+fluxion安装使用(保姆级超详细)
- 致青春触动心灵的英语美文——小寓言大智慧
- win7音量控制图标不见了怎么办
- H5中 iphoneX适配
- mysql alter auto increment_修改mysql中Auto_increment值的例子
- UG NX 12 布尔运算
- IP和局域网 简单了解
- 深度学习---0 介绍
热门文章
- 如何设置添加页眉 计算机知识,怎么设置页眉页脚-轻松解决计算机二级之页眉页脚不再是问题...
- JavaScript使用手册(一)
- linux运行minecraft,如何在DeepinLinux下运行Minecraft光影整合包进行游戏
- CSS 实现平行四边形
- pack_padded_sequence torch说明
- windows10更新服务器修改,Windows 10彻底关闭自动更新(Windows Update和Windows Update Medic Service)...
- Debian系统基本命令
- C语言 单链表的反转
- web标准是html5推出的标准,HTML5 标准规范完成了
- PHP下载文件的正确方式