buffer busy waits,我的看法

查看数: 31950 | 评论数: 80 | 收藏 42
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-7-8 12:59

正文摘要:

本帖最后由 wei-xh 于 2013-7-19 16:40 编辑 最近看到论坛里好几篇帖子在讨论buffer busy waits,在这里谈谈我的看法。 先说说这个等待怎么来的。 buffer busy waits 的由来。 当n个进程想以不兼容的模式持有 ...

回复

liupzmin 发表于 2015-3-16 09:58
1)当读取的进程发现内存块正在被修改的时候(如果有x模式的buffer pin,就说明正在被修改),它只能等待,它不能clone块,因为这个时候内存块正在变化过程中ing,这个时候clone是不安全的。

楼主大才,文章相见恨晚,敢问上句话中提到的“内存块正在变化过程中ing,这个时候clone是不安全的”,这个信息楼主是从哪里获得的,有什么资料佐证么,希望不吝赐教!这个地方也困扰我很久!
www_xylove 发表于 2014-10-30 17:55
vage 发表于 2014-10-30 12:13
不是啊,访问根块、枝块时的CBC Latch是共享的,叶块和表块还是独占的啊
唯一索引如果条件是等值的话,从 ...

谢谢。
vage 发表于 2014-10-30 12:13
www_xylove 发表于 2014-10-28 23:19
"枝块时的CBC Latch才是共享的"
这句话是不完整的,
进程访问一个索引页块的时候,第一次获得cbc latch ...

不是啊,访问根块、枝块时的CBC Latch是共享的,叶块和表块还是独占的啊
唯一索引如果条件是等值的话,从根块一直到表块都是共享Latch啊。所以如果索引可以建成唯一的,要尽量建成唯一的,可以减少CBC Latch的竞争啊
www_xylove 发表于 2014-10-28 23:19
vage 发表于 2013-7-8 16:27
绝大多数情况下的CBC Latch都是独占的。
只的唯一索引、访问根块、枝块时的CBC Latch才是共享的。

"枝块时的CBC Latch才是共享的"
这句话是不完整的,
进程访问一个索引页块的时候,第一次获得cbc latch是共享的,后面几次是独占的。
ch7543658 发表于 2014-6-8 09:49
你好!~我有个疑问一直不懂~希望能得到解释!~
“写写”能会出现 buffer busy waits 很容易理解,但是在“读写”的时候我就不大理解了,当一个进程在写的时候不是会 clone 一个块么,这是不是就相当于构造了 CR 快?那么这时候读为什么不读CR块?
小唐鸭 发表于 2013-9-27 12:32
good job!
wei-xh 发表于 2013-9-27 11:20
hello985 发表于 2013-9-27 09:09
道理其实非常简单
1)当读取的进程发现内存块正在被修改的时候(如果有x模式的buffer pin,就说明正在被修 ...

要构造CR,等待写完成后构造
hello985 发表于 2013-9-27 09:09
道理其实非常简单
1)当读取的进程发现内存块正在被修改的时候(如果有x模式的buffer pin,就说明正在被修改),它只能等待,它不能clone块,因为这个时候内存块正在变化过程中ing,这个时候clone是不安全的。很多人说,oracle里读写是互相不阻塞的,oracle可以clone内存块,把读写的竞争分开。其实要看情况,在读的时候发现内存块正在被写,是不能够clone的,因为是不安全的。这个时候读的进程只能等待buffer busy waits。


个人不明白,难道这个时候oracle不去构造cr块么?
myownstars 发表于 2013-9-16 14:36
场景1虽然不会出现buffer busy wait,但会大量的latch: cache buffers chains  
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表