12
返回列表 发新帖
楼主: 超级野人

为什么commit的速度这么快?

[复制链接]
论坛徽章:
22
2010新春纪念徽章
日期:2010-03-01 11:08:33马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:09
11#
发表于 2004-8-20 08:33 | 只看该作者
最初由 ffyffy 发布
[B]我很想知道,biti_rainy谈的这些情况的全面、详细的知识从什么地方、或什么资料、什么书上能学到。找不到想学、要学的东西在哪儿,想发力无处使,痛苦!
哪位好心人提供一下? [/B]

先看看oracle的concepts,administrator's guild,
深入的东西可以去看看steve adams,jonathan lewis等人的网站,上面有很丰富的资料
更加深入的东西可能得自己去dump Oracle的sga,heap,trace来查看oracle的内部信息,自己分析了.

使用道具 举报

回复
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
12#
发表于 2004-8-20 09:10 | 只看该作者
最初由 ffyffy 发布
[B]我很想知道,biti_rainy谈的这些情况的全面、详细的知识从什么地方、或什么资料、什么书上能学到。找不到想学、要学的东西在哪儿,想发力无处使,痛苦!
哪位好心人提供一下? [/B]


点点滴滴汇集起来的

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:342010新春纪念徽章
日期:2010-03-01 11:20:51
13#
发表于 2004-8-20 10:37 | 只看该作者
expert-one-expert里提到commit的情形,
我们常认为commit 时要处理很多东西,其实很少,
rollback时要处理很多东西.

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34优秀写手
日期:2013-12-18 09:29:13
14#
发表于 2004-8-21 22:08 | 只看该作者
最初由 biti_rainy 发布
[B]

点点滴滴汇集起来的 [/B]

biti请你详细一点谈谈?

使用道具 举报

回复
论坛徽章:
1
会员2006贡献徽章
日期:2006-04-17 13:46:34
15#
 楼主| 发表于 2004-8-26 17:23 | 只看该作者
我想问一下,scn是不是一直递增下去的,它的值有没有限制?

使用道具 举报

回复
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
16#
发表于 2004-8-26 17:31 | 只看该作者
最初由 超级野人 发布
[B]我想问一下,scn是不是一直递增下去的,它的值有没有限制? [/B]


是一直递增下去的,有限制,是 6个字节 表示的数字

也就是说,如果你每秒增加10000个,使用890年 使用完毕!

使用道具 举报

回复
论坛徽章:
1
会员2006贡献徽章
日期:2006-04-17 13:46:34
17#
 楼主| 发表于 2004-8-27 17:03 | 只看该作者
最初由 biti_rainy 发布
[B]回滚段不需要刻意保留已经提交的事务的信息,如果有很长时间这些块没有机会被读入内存,而回滚段中所有信息都已经被覆盖,那么当重新查询这个表的时候,假设查询开始  SCN = t1,而回滚段中所有事务的最小SCN 为t2, 并且 t1 > t2 ,这时虽然原来这些数据提交的时候的commit  scn 我们无从找到了,但是,oracle是能够确信该事务已经被提交,并且由  t1 >  t2 可以知道该数据块上的数据不需要回退,因为提交scn必然小于查询scn。  这时依然会为这个块进行 delay  block cleanout 。只不过这个清除的时候的 commit  scn 并不是真正的 commit  scn ,而是这个时候 回滚段头的所获得的最小也是最早的 SCN (虽然不准确,但是不会对应用构成影响)


如果有这么一种情况,一个将会读到这个block查询运行了很久,使得 t1 < t2 ,当查询读到这个block的时候,其回滚段中事务信息又被覆盖掉了。这时无法确定 t1 和 commit SCN 的关系,也就是说oracle不知道这个查询是不是  不需要  回滚这个块去读前印象,那么这个查询就会出错,产生 ora-01555 错误。 [/B]


心里还是不太明白:scn是不是commit之后才会产生的?如果是的话,那么我想讨论的是:如果一个数据块没有commit,那么它也就不会有scn了(或者说该数据块没有与该tranction相关的scn),那么该怎么判断它是否提交了呢?(当它下一次被读回内存的时候)。
如果说scn并不是一定在commit之后产生的,那么一个数据块中的数据被一个tranction(T1)更改之后,可能会产生一个scn,而当另一个tranction(T2)更改该数据块中的其他行的数据之后,是不是也会产生一个scn,那么是不是T2>T1呢,而如果T2比T1先提交呢,那该数据块是以哪个scn为标准呢?如果是T1,那么oracle可以判断出T1没有提交。而这时oracle该如何判断T2是否被提交了呢?

使用道具 举报

回复
论坛徽章:
1
会员2006贡献徽章
日期:2006-04-17 13:46:34
18#
 楼主| 发表于 2004-8-27 17:04 | 只看该作者
思想有些乱了,呵呵。。。。

使用道具 举报

回复
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
19#
发表于 2004-8-27 17:28 | 只看该作者
最初由 超级野人 发布
[B]

心里还是不太明白:scn是不是commit之后才会产生的?如果是的话,那么我想讨论的是:如果一个数据块没有commit,那么它也就不会有scn了(或者说该数据块没有与该tranction相关的scn),那么该怎么判断它是否提交了呢?(当它下一次被读回内存的时候)。
如果说scn并不是一定在commit之后产生的,那么一个数据块中的数据被一个tranction(T1)更改之后,可能会产生一个scn,而当另一个tranction(T2)更改该数据块中的其他行的数据之后,是不是也会产生一个scn,那么是不是T2>T1呢,而如果T2比T1先提交呢,那该数据块是以哪个scn为标准呢?如果是T1,那么oracle可以判断出T1没有提交。而这时oracle该如何判断T2是否被提交了呢? [/B]



你对 回滚段 和 ITL以及 block 的结构 的不了解所以有这样的问题
要给你阐述清楚这个问题 又是需要长篇大论 了,我甚至怕无休止的下去

要深入地考究一个问题,但是相关的其他知识太欠缺,无法进行有效的交流

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表