《数据库原理》知识点之数据库的并发控制
1个回答
展开全部
数据库的并发控制
并发控制带来的三类问题
(1)丢失更新的问题
(2)不一致分析问题
(3)“脏数据”的读出。(在数据库技术中,未提交的随后又被撤消的数据为“脏数据”。)
以上三类问题结合多事务的并行操作进行理解。
举例
[例题] 设T1,T2,T3是如下三个事务,其中R为数据库中某个数据项,设R的初值为0.
T1:R:=R+5
T2:R:=R*3
T3:R:=2
若允许三个事务并行执行,试列出所有可能的正确结果。采用什么手段,可以解决并行调度的不一致问题?
答:有6种可能的情况
(1)T1-T2-T3: R=2
(2)T1-T3-T2: R=6
(3)T2-T1-T3: R=2
(4)T2-T3-T1: R=7
(5)T3-T1-T2: R=21
(6)T3-T2-T1: R=11
采用封锁,可以解决并行调度的不一致问题。
为解决并发控制带来的问题,通常要采用封锁(locking)技术,常用的封锁有:排它型封锁(X封锁)和共享型封锁(S封锁)两种。
并发控制中,有许多概念都要掌握:封锁,X封锁,S封锁,PX协议,PXC协议,PS协议,PSC协议,活锁,死锁,可串行化调度,不可串行化调度,两段封锁协议
并发控制带来的三类问题
(1)丢失更新的问题
(2)不一致分析问题
(3)“脏数据”的读出。(在数据库技术中,未提交的随后又被撤消的数据为“脏数据”。)
以上三类问题结合多事务的并行操作进行理解。
举例
[例题] 设T1,T2,T3是如下三个事务,其中R为数据库中某个数据项,设R的初值为0.
T1:R:=R+5
T2:R:=R*3
T3:R:=2
若允许三个事务并行执行,试列出所有可能的正确结果。采用什么手段,可以解决并行调度的不一致问题?
答:有6种可能的情况
(1)T1-T2-T3: R=2
(2)T1-T3-T2: R=6
(3)T2-T1-T3: R=2
(4)T2-T3-T1: R=7
(5)T3-T1-T2: R=21
(6)T3-T2-T1: R=11
采用封锁,可以解决并行调度的不一致问题。
为解决并发控制带来的问题,通常要采用封锁(locking)技术,常用的封锁有:排它型封锁(X封锁)和共享型封锁(S封锁)两种。
并发控制中,有许多概念都要掌握:封锁,X封锁,S封锁,PX协议,PXC协议,PS协议,PSC协议,活锁,死锁,可串行化调度,不可串行化调度,两段封锁协议
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
美林数据技术股份有限公司
2020-10-29 广告
2020-10-29 广告
Tempo大数据分析平台,是一款面向企业用户的数据分析与应用工具,为用户提供报表设计、可视化分析、机器学习、文本分析等自助式数据分析与探索。平台基于大数据架构,集数据接入、数据分析探索、成果管理与应用为一体,面向企业全民用户提供从数据到业务...
点击进入详情页
本回答由美林数据技术股份有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询