2004-4-5 13:15
zdygk
个人整理了一下key words:<br /><span style='color:red'>DSS OLTP CR 隔离级 脏读 RAC DB2分区数据库(SHARE-NOTHING) oracle并行服务器(ops,rac,share disk)。回滚段(rollback segment),SQL 92</span><br />-- db2回滚处理问题 (http://www.itpub.net/showthread.php?threadid=207514)<br /><br /><br />--------------------------------------------------------------------------------<br />由 jiangzx 于 04-03-25 17:57 发表: <br />db2回滚处理问题<br /><br />本人是DB2的初学者,和oracle,sybase,sql server作比较,发现在处理rollback时有些疑问,象oracle是有rollback segment,sybase和sql server有日志段,但在DB2中好象是找不到类似于oracle的rollback segment或者是sybase之类的日志段,是不是其恢复和rollback都是利用其日志文件来实现,因为好象其日志文件有primary和secondary之分,而且有整个日志文件大小限制,是不是这个大小限制也决定了其能rollback的程度,不知道理解是否正确,请指导。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-25 21:01 发表: <br />你发现了DB2的一个大问题!<br /><br />没错,DB2没有rollback segment,它只有log.<br />回退时使用的是online log.<br /><br />你再往深处想想,这样一来缺省情况下DB2就失去了读一致性,可怕吧.<br />当然可以通过调整参数来强行保证读一致性,但又失去了并发性.<br /><br />个人认为这是DB2的一个大缺陷!<br /><br /><br />--------------------------------------------------------------------------------<br />由 jiangzx 于 04-03-25 22:02 发表: <br />db2<br /><br />呵呵,其实发现db2在某些方面还是不错的,特别是在大型处理方面,可以比较方便的把数据库分散到多个节点上,但这其实也存在一个问题,在Unix平台下,好象需要把实例的相关代码放在共享NFS磁盘上,这好象又增加了安全方面的考虑了<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-26 11:10 发表: <br /><br />呵呵,第一,任何由于日志空间满或主动roll back的交易,都可以被完整rollback;<br />第二,log file和读一致性没有关系。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-26 15:04 发表: <br /><br />没有ROLLBACK SEGMENT光靠LOG是可以rollback,但请你告诉我,DB2怎么实现同一时间点的读一致性?<br />IBM网站上自己承认DB2根本不支持读一致性,这样的数据库能用于关键业务吗?我很疑惑.<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-26 21:48 发表: <br /><br />一致性通过isolation level解决<br /><br />请告诉我ibm网址,我很有兴趣看一下。另外,如果你不相信db2可以用于关键业务,那你不要在工农中建交存钱 <br /><br /><br />--------------------------------------------------------------------------------<br />由 zdygk 于 04-03-28 12:27 发表: <br /><br />这怎么可能~ 居然对db2的这个基本问题有疑问?wxz75看来没有db2的应用经验啊。<br />__________________<br />I wanna to be a OCM!~~~<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-28 21:11 发表: <br />这种问题我当然知道<br /><br />一致性是可以通过isolation level解决,但这是以牺牲并发性为代价的.<br />DB2有四种隔离级别: 未提交读、游标稳定性(缺省)、读稳定性和可重复读. 未提交读的并发性最好,但是没有任何读一致性可言; 缺省的游标稳定性的并发性已经不如ORACLE(select 和update互相影响,ORACLE无此问题),而且读一致性也不能保证,其他两种级别应该可以保证读一致性,但并发性完全不可接受.<br />之所以银行可以用DB2有两个原因:<br />1.有些银行用的是390,机制不同<br />2.其他银行用UDB,但是银行和许多其他如电信等行业不同,对OLD IMAGE的要求不高,所以DB2的一致性和并发性的问题被掩盖.<br /><br />这些问题我发现时也很疑惑,简直不敢相信.但我与IBM的资深工程师探讨过多次后,才一致共同确认DB2是存在此类缺陷.<br /><br />这就是事情的经过,有些问题你光从DB2的角度看不出来,你如果能同时掌握DB2和ORACLE,就很容易看出来了.当然,以DB2的角度,ORACLE也不是没问题.<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-03-29 08:35 发表: <br /><br />在这个所谓的“问题”上,mssql 2000,sybase,db2都是一样的。他们都遵循sql92标准,只有ORACLE他独出心裁。呵呵。。。。而且上述3个都是NO SHARED DISK ,oracle 是 SHARED DISK。多说了一句。有利必有弊。体系不一样。看综合性能。所谓的缺点谁都有,可以通过其他手段弥补。<br /><br /><br />--------------------------------------------------------------------------------<br />由 jiangzx 于 04-03-29 09:02 发表: <br />tks<br /><br />谢谢各位的意见,让我对DB2的了解增加了一些,谢谢<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-29 10:14 发表: <br />呵呵,看来我又得写上几句<br /><br />没错,ROLLBACK 是ORACLE特有的,但可能恰恰是它的一个极大优势,这个问题不展开了.<br />说到结构,ORACLE使用的是share-disk结构, 4节点共享一块存储;DB2使用的是share-nothing结构, 4节点分别拥有各自的存储.如果ORACLE的一个节点宕,对其他节点几乎没有影响.而DB2一般来说表空间分散在nodegoup上,而nodegroup一般根据应用要求往往会包含至少2个节点.这样一来,DB2的一个节点宕,在相关资源切换完之前会对nodegroup内其他节点的可用性带来严重冲击.尽管如果设计得好, 切换时间可以控制在分钟级,但一个节点宕会影响其他节点这一点令电信类关键应用很难接受.DB2的share-nothing结构的提出主要是为了保证可扩展性和IO吞吐.但在目前高端存储和SAN网络开始流行的情况下,该架构的优点已经失去,相反稳定性上的缺点开始暴露.对ORACLE来说正相反.<br /><br /><br />--------------------------------------------------------------------------------<br />由 jiangzx 于 04-03-29 16:16 发表: <br />db2icrt<br /><br />呵呵,DB2的分区数据库和群集应该是不同的概念吧,<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-29 16:32 发表: <br /><br />1. 很重要,除了uncommited read以外,不存在读一致性的问题,而这不是ur所能提供的。<br />2. 很少有(几乎没有)rr/rs的应用,正如你所说,并发行很差(包括oracle)。<br />3. Oracle采用data page(block)上记录ITL来控制并发,代价是增加磁盘的开销。<br />4. 不管哪种方式都有其利弊,从实践上看,Oracle的机制好一些,db2的应用碰到的并发问题很多都是因为从Oracle移植过来 不过移植是很痛苦的 <br />5. share-disk的问题不仅仅是IO吞吐,而是全局的锁,以及仅仅一个节点为请求工作。Oracle从未发布过比较好的/大的tpc-h cluster(RAC)测试。而这恰恰是SHARE-NOTHING的SCALABILITY的优势。我称之为inbeing <br />6. share-disk的可用性(inbeing)确实好,但不是宕机对其他节点没有影响,因为它涉及到remaster以及GCS重建 - 不知道10G有没有改进。DB2准备用Informix的HDR技术来解决这个问题。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-29 17:30 发表: <br />看来版主果然有一定过人之处<br /><br />很高兴与大家交流.由于时间关系很多观点我先不说了.<br />不过我想全局锁的问题,ORACLE9I的RAC比起原来的OPS来说,以我的实际经验来看,似乎确实长进不少.<br /><br />实际上我现在的一个很强烈的感觉是:我不敢用DB2代替ORACLE.以前我曾经以为DB2可以,但自从我学DB2后就不敢了.我们电信业看重的是并发性能和稳定性,尤其是后者.考核也是很严的,可能外人会觉得不尽人情.在这种情况下,DB2的很多优点我都只能视而不见了,而稳定性和并发性上的缺陷对我而言几乎否定了DB2的一切.其实我还是就事论事纯粹讨论技术的,有些话我没有说,怕引起DB2爱好者的反感.实际上,DB2培训完之后,有ORACLE DBA说:'真想不到DB2这样一个具有如此致命缺陷的数据库竟然会有人感用!?连一致性都没有!?'实际上我当时也有类似想法,所以事后我才找IBM工程师探讨,谈了很多,谈到了390,还有IBM和银行业的关系,等等.后来我才明白DB2的许多特点(无论是优点还是缺点)是怎么来的.但现在我个人仍然认为在关键OLTP上,选择DB2类似于自杀,但在DSS或BATCH业务(如ERP和银行业务)上,DB2没问题.个人观点,欢迎指正.<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-29 17:54 发表: <br /><br />呵呵,过奖了。有机会多探讨...<br /><br />现在单台服务器的oltp性能已经很好了,单台p690上db2已经可以跑到1,000,000 tpmC(Oracle在Superdome上也做到了)。<br /><br />想请教wxz75一个问题,您在用OPS/RAC吗?是如何使用的?<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-29 20:43 发表: <br />4-node RAC<br /><br />用了没多久,也没太多经验.感觉性能还是比我预料的好,不过有BUG.对这些BUG ORACLE也没太多办法,有些BUG我们可能是全球首例,长时间查不出来.领导又不懂技术,对我们技术人员压力很大,唉......<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-29 23:16 发表: <br /><br />有没有scalability的估计,比如4 node能有多少?<br /><br /><br />--------------------------------------------------------------------------------<br />由 bpmfhu 于 04-03-30 09:13 发表: <br /><br />很受启发,我也一直对db2没有会滚段如何来保证数据库的读一致性,有疑惑。希望各位大虾们深入讨论,我搬个凳子来学习<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-03-30 10:05 发表: <br /><br />银行每天9点多业务高峰期的估计一个省也有3000个窗口在同时办业务。呵呵。。。你能说DB2不好。<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-03-30 10:10 发表: <br /><br />现在硬件太先进了。没有好的硬件,再好的数据库也不可以。我就不明白DB2在市场占有量占第一,外国人都傻啊?<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-03-30 10:13 发表: <br /><br />在DB28。1中有多维群集。也改进了索引。在大数据量上并发很好。<br /><br /><br />--------------------------------------------------------------------------------<br />由 bpmfhu 于 04-03-30 13:09 发表: <br /><br />在DB28。1中有多维群集对存储空间的开销太大,在大数据量的数据库中觉得不太现实。<br />另外“改进了索引。在大数据量上并发很好“8的版本里面引入type2 index,具体好处,还没看出来。能具体说说吗?谢谢!<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-30 14:24 发表: <br /><br />type 2 index使用psedo delete来避免next key lock<br /><br /><br />--------------------------------------------------------------------------------<br />由 m505 于 04-03-30 14:27 发表: <br /><br />需要注意的是如果是从DB2 V7 migration到V8,type 1 index不会被自动转换<br /><br /><br />--------------------------------------------------------------------------------<br />由 bpmfhu 于 04-03-31 09:19 发表: <br /><br />但是我在对一些大的查询做snapshot后,发现仍然出现ns锁,斑竹能否具体讲讲<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-03-31 13:46 发表: <br /><br />看来大家对DB2都很了解啊。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-31 16:10 发表: <br />to cliser<br /><br />冲你那几句话,我还真得说DB2不行.<br /><br />我前面已经说了,有些问题要对ORACLE和DB2都有了解之后才能发现.....<br />从我个人经验来说,别的不说,我几乎可以肯定ORACLE真正做到了一致性和并发性的平衡,DB2则在这一点上存在差距.这种差距是否致命各人有个人的看法,我从我的实际经验判断认为还是比较严重的.你怎么认为是你的事.你我也没必要强求一致.这些不要再纠缠了吧,该说的我前面的贴子都说了,多说也无益.<br /><br />还有,所谓国外DB2市场DB2占用如何如何优势这种言论,不信也罢.这种数据商业气息太浓,你知道它是怎么统计出来的?什么平台上的?什么行业的?ORACLE和DB2都可以认为自己是老大,关键看是从哪个角度去统计,看谁的文字游戏和商业欺诈玩得出色,仅此而已.<br /><br />具我所知,似乎还是IBM的文字游戏和商业欺诈更出色些.上次有家公司招标,该公司的人对数据库不了解,于是要求做测试,谁快选谁.一开始怎么测都是DB2快,ORACLE很不解.后来发现,你猜怎么着?原来DB2把许多参数都调了,许多必要的校验都去掉了,速度那个快啊,和飞似的.(怎么调的?比如我就知道把隔离级别降低不就是公开的一招吗?别的还有.不过ORACLE可是没有这种公开招数的.)后来ORACLE也联系老美,如法炮制加上了内部参数,结果速度也一样快.不知道后来那公司选的是什么.我说这些,是想让你明白,技术是技术,商业是商业,呵呵!<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-03-31 17:31 发表: <br /><br />呵呵。。。火药味挺浓!不管怎么说都是数据库前3强。说明都不简单。以后继续交流。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-03-31 20:10 发表: <br />哪里哪里,探讨而已,交流交流<br /><br />有些话是看到过一些事情后有感而发.<br />不过我是搞技术的,商务我不管,只是知道一些.<br /><br /><br />--------------------------------------------------------------------------------<br />由 bpmfhu 于 04-03-31 20:32 发表: <br /><br />不过db2确实最近在国内市场做得比较成功(:<br />我觉得db2这个板块比较冷清,楼上2位看来对db2都比较熟悉,能否多发表一些使用的宝贵经验,让我们学习,学习:)。<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-04-01 12:07 发表: <br /><br />我也是来学习的。请多多帮助。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-01 20:54 发表: <br />Re: 这种问题我当然知道<br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 wxz75 发布<br />一致性是可以通过isolation level解决,但这是以牺牲并发性为代价的.<br />DB2有四种隔离级别: 未提交读、游标稳定性(缺省)、读稳定性和可重复读. 未提交读的并发性最好,但是没有任何读一致性可言; 缺省的游标稳定性的并发性已经不如ORACLE(select 和update互相影响,ORACLE无此问题),而且读一致性也不能保证,其他两种级别应该可以保证读一致性,但并发性完全不可接受.<br />之所以银行可以用DB2有两个原因:<br />1.有些银行用的是390,机制不同<br />2.其他银行用UDB,但是银行和许多其他如电信等行业不同,对OLD IMAGE的要求不高,所以DB2的一致性和并发性的问题被掩盖.<br /><br />这些问题我发现时也很疑惑,简直不敢相信.但我与IBM的资深工程师探讨过多次后,才一致共同确认DB2是存在此类缺陷.<br /><br />这就是事情的经过,有些问题你光从DB2的角度看不出来,你如果能同时掌握DB2和ORACLE,就很容易看出来了.当然,以DB2的角度,ORACLE也不是没问题. <br />--------------------------------------------------------------------------------<br /><br /><br />缺省的游标稳定性?我怎么记得是CR?。<br />看来我把几个数据库弄混淆了,INFORMIX ORACLE的缺省隔离级别是 CR (提交读),DB2是游标稳定性,但是ORACLE没有这个级别,似乎CR和游标稳定性不是一个概念,INFORMIX就同时有游标稳定性和提交读两个不同的隔离级别,而且认为CR比游标稳定性隔离级别低,当然并发性好。所以关于并发的东西,我看这个论述不完整,等我再查查资料再说。<br />对于没有回滚段会导致没有读一致性,我觉得简直是匪夷所思,能否讲你的完整思路写出来。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-01 21:24 发表: <br />Re: 这种问题我当然知道<br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 wxz75 发布<br />一致性是可以通过isolation level解决,但这是以牺牲并发性为代价的.<br />DB2有四种隔离级别: 未提交读、游标稳定性(缺省)、读稳定性和可重复读. 未提交读的并发性最好,但是没有任何读一致性可言; 缺省的游标稳定性的并发性已经不如ORACLE(select 和update互相影响,ORACLE无此问题),而且读一致性也不能保证,其他两种级别应该可以保证读一致性,但并发性完全不可接受.<br />之所以银行可以用DB2有两个原因:<br />1.有些银行用的是390,机制不同<br />2.其他银行用UDB,但是银行和许多其他如电信等行业不同,对OLD IMAGE的要求不高,所以DB2的一致性和并发性的问题被掩盖.<br />这些问题我发现时也很疑惑,简直不敢相信.但我与IBM的资深工程师探讨过多次后,才一致共同确认DB2是存在此类缺陷.<br /><br />这就是事情的经过,有些问题你光从DB2的角度看不出来,你如果能同时掌握DB2和ORACLE,就很容易看出来了.当然,以DB2的角度,ORACLE也不是没问题. <br />--------------------------------------------------------------------------------<br /><br /><br />请说明清楚390的DB2机制不同在什么地方?<br />IBM网站说DB2不能保证读一致性的原文在哪里,请给出,谢谢。<br />按照正常理解和ITPUB的文章,对于ORACLE缺省的CR隔离级别,一样不可能避免幻象读和不可重复读的问题。<br />"读一致性:当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。而且,当一个语句正在执行时,该语句将看不到从该语句开始执行后的未提交的修改(语句级读一致性)。当ORACLE执行SELECT语句时,ORACLE依照当前的系统改变号(SYSTEM CHANGE NUMBER-SCN)来保证任何前于当前SCN的未提交的改变不被该语句处理。可以想象:当一个长时间的查询正在执行时,若其他会话改变了该查询要查询的某个数据块,ORACLE将利用回滚段的数据前影像来构造一个读一致性视图。"<br />对于INFORMIX,也没有回滚段,只有物理日志文件,用来保证修改前的映象,其实可以理解成为他也有回滚段,但是只有一个大的。<br />对于DB2,我的理解在于,他的日志不是好像ORACLE这样只记录修改,而是将INFORMIX那样的逻辑日志和物理日志都放到日志文件中,包括修改前印象和修改操作。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-01 22:14 发表: <br />Re: 你发现了DB2的一个大问题!<br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 wxz75 发布<br />没错,DB2没有rollback segment,它只有log.<br />回退时使用的是online log.<br /><br />你再往深处想想,这样一来缺省情况下DB2就失去了读一致性,可怕吧.<br />当然可以通过调整参数来强行保证读一致性,但又失去了并发性.<br /><br />个人认为这是DB2的一个大缺陷! <br />--------------------------------------------------------------------------------<br /><br /><br />没有想通,非常想不通,请说明清楚你的思路。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-01 22:29 发表: <br /><br /><a href='http://www.dbforums.com/archives/t246823.html' target='_blank'>http://www.dbforums.com/archives/t246823.html</a><br />关于rollback segment ,用来放修改前的映像,DB2无法把逻辑日志和修改前印象都放到LOG中了。仅此而已,可能有日志争用导致性能上的问题,但是绝对不可能导致读不一致。<br />连脏读都无法避免,还怎么玩。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-01 23:17 发表: <br />Re: to cliser<br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 wxz75 发布<br />冲你那几句话,我还真得说DB2不行.<br /><br />我前面已经说了,有些问题要对ORACLE和DB2都有了解之后才能发现.....<br />从我个人经验来说,别的不说,我几乎可以肯定ORACLE真正做到了一致性和并发性的平衡,DB2则在这一点上存在差距.这种差距是否致命各人有个人的看法,我从我的实际经验判断认为还是比较严重的.你怎么认为是你的事.你我也没必要强求一致.这些不要再纠缠了吧,该说的我前面的贴子都说了,多说也无益.<br /><br />还有,所谓国外DB2市场DB2占用如何如何优势这种言论,不信也罢.这种数据商业气息太浓,你知道它是怎么统计出来的?什么平台上的?什么行业的?ORACLE和DB2都可以认为自己是老大,关键看是从哪个角度去统计,看谁的文字游戏和商业欺诈玩得出色,仅此而已.<br /><br />具我所知,似乎还是IBM的文字游戏和商业欺诈更出色些.上次有家公司招标,该公司的人对数据库不了解,于是要求做测试,谁快选谁.一开始怎么测都是DB2快,ORACLE很不解.后来发现,你猜怎么着?原来DB2把许多参数都调了,许多必要的校验都去掉了,速度那个快啊,和飞似的.(怎么调的?比如我就知道把隔离级别降低不就是公开的一招吗?别的还有.不过ORACLE可是没有这种公开招数的.)后来ORACLE也联系老美,如法炮制加上了内部参数,结果速度也一样快.不知道后来那公司选的是什么.我说这些,是想让你明白,技术是技术,商业是商业,呵呵! <br />--------------------------------------------------------------------------------<br /><br /><br /><br />行了行了,别老是技术技术的,你们选用4节点的RAC,就说明你们根本不是认真从技术上考虑。我大概也可以猜到你是哪个公司的,4节点的RAC分明就是给ORACLE的商业手段给骗了,之前是否有成功的案例也没有仔细调查吧,而且没有先对选项做试验。当然IBM也这么玩,上次打算卖给我们的XPS,当然就直接找测试环境加应用测试,马上否决。<br />而且当时测试的还挺搞笑,因为用EMC的设备,EMC的一个销售(原来做ORACLE,而且据说做的挺高)偷偷低拉我过去说:“你们这么大的数据库,INFORMIX不行啊,干嘛不用ORACLE呢?如果在你们的库再大点,ORCLE也不行了,应该用DB2“。哈哈。<br /><br /><br />--------------------------------------------------------------------------------<br />由 bpmfhu 于 04-04-02 09:08 发表: <br /><br />4节点的RAC确实比较少见<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-02 11:25 发表: <br /><br />对于并发问题我基本可以得到结论了,DB2缺省的隔离级别游标稳定性是比CR(ORACLE的缺省隔离级别)高的隔离级别。由于两者的隔离级别不相同,最好参考INFORMIX这种既有CR也有游标稳定性的数据库的隔离级别就清楚了。<br />隔离级别高当然导致可能并发性能的下降,就这样简单而已,ORACLE和INFORMIX是提供了一个满足SQL-92标准的东西,可以有比较好的并发性,DB2可能还是考虑原来主要在金融领域的应用,试图增加一些东西提供更强的隔离级别,但是自然并发就下降了。<br />至于DB2无法保证读一致性,纯属胡说。<br />当然由于DB2缺省的隔离级别的问题,要提高性能,DB2建议对读也要进行提交<br /><a href='http://www-900.ibm.com/developerWor...211sampat.shtml' target='_blank'>http://www-900.ibm.com/developerWor...211sampat.shtml</a><br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-04-02 12:29 发表: <br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 wolfop 发布<br />对于并发问题我基本可以得到结论了,DB2缺省的隔离级别游标稳定性是比CR(ORACLE的缺省隔离级别)高的隔离级别。由于两者的隔离级别不相同,最好参考INFORMIX这种既有CR也有游标稳定性的数据库的隔离级别就清楚了。<br />隔离级别高当然导致可能并发性能的下降,就这样简单而已,ORACLE和INFORMIX是提供了一个满足SQL-92标准的东西,可以有比较好的并发性,DB2可能还是考虑原来主要在金融领域的应用,试图增加一些东西提供更强的隔离级别,但是自然并发就下降了。<br />至于DB2无法保证读一致性,纯属胡说。<br />当然由于DB2缺省的隔离级别的问题,要提高性能,DB2建议对读也要进行提交<br /><a href='http://www-900.ibm.com/developerWor...211sampat.shtml' target='_blank'>http://www-900.ibm.com/developerWor...211sampat.shtml</a> <br />--------------------------------------------------------------------------------<br /><br /><br /><br /><br />非常感谢你!也感谢楼上的各位。通过讨论,使我们对各大数据库更了解了。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-04-02 14:11 发表: <br />唉,又一个长篇大论的<br /><br />我实在没有空继续长篇大论下去了,你要是想继续探讨,有没有电话,详细讨论?<br />另外奉劝你,说话注意点分寸,不要把我的论点断章取义,再说什么"纯属胡说"之类.在网上互相攻击,我已经没有兴趣了.有意思吗?<br />说到四节点RAC,你以为我想选啊?还是那句话:技术是技术,商务是商务.有时侯选型是领导的政治需要决定的,非完全取决于技术优劣.<br /><br /><br />--------------------------------------------------------------------------------<br />由 cliser 于 04-04-02 14:56 发表: <br /><br />听说IBM DB2在国内有8节点的成功例子(是IBM中国的人在由CSDN主持的论坛的讨论时说的).<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-02 21:41 发表: <br />是啊,而且你是什么都没有说<br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 wxz75 发布<br />我实在没有空继续长篇大论下去了,你要是想继续探讨,有没有电话,详细讨论?<br />另外奉劝你,说话注意点分寸,不要把我的论点断章取义,再说什么"纯属胡说"之类.在网上互相攻击,我已经没有兴趣了.有意思吗?<br />说到四节点RAC,你以为我想选啊?还是那句话:技术是技术,商务是商务.有时侯选型是领导的政治需要决定的,非完全取决于技术优劣. <br />--------------------------------------------------------------------------------<br /><br /><br />我仔细找了找ORACLE的读一致性资料,终于弄明白那个东西利用回滚段建立的一个幻象读的结果,也许有他的意义,也许是噱头而已。如果你认为这个东西是OLTP系统必要的东西,倒是让我很诧异,想法BATCH可能才需要这个东西。我倒是想看看你这个读一致性在OLTP系统中的用处。<br />顺便请你解释解释390上面的DB2的机制和开放系统的不同之处。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-03 00:15 发表: <br /><br /><br />quote:<br />--------------------------------------------------------------------------------<br />最初由 cliser 发布<br />听说IBM DB2在国内有8节点的成功例子(是IBM中国的人在由CSDN主持的论坛的讨论时说的). <br />--------------------------------------------------------------------------------<br /><br /><br />32节点都有,不过那个是DSS的东西。<br /><br /><br />--------------------------------------------------------------------------------<br />由 wxz75 于 04-04-03 08:56 发表: <br />看来要和DB2的用户说明白读一致性的必要性等问题还真是累<br /><br />要说清楚得打多少字啊!?我又没职责在这儿上课.我看你也是对数据库很有经验的人,讨论一下对大家或许都又提高.给个电话,OK?<br /><br />不过关于这个问题我和IBM的人探讨过,最后结果是他们被我说服,承认这方面DB2存在不足.呵呵!所以我可决不是信口开河哦!<br /><br /><br />--------------------------------------------------------------------------------<br />由 wolfop 于 04-04-03 11:11 发表: <br /><br />我看了http://asktom.oracle.com/pls/ask/f?...A:880343948514,<br />虽然有点道理,但是我还是不认为这个东西有多少作用。<br />这种东西,感觉和IBM指责ORACLE不存在真正的分区一样,属于比较无聊的东西,或者ORACLE指责DB2的集群如果一个节点DOWN整个集群就会完蛋一样,没有绝对正确的答案。<br />INFORMIX DB2 SQL SERVER都没有这个所谓的读一致性,照样大量用在关键场合;INTERBASE和MYSQL的INNODB实现了的又如何?<br />把这个当作一个DBMS是否适合作为关键的OLTP应用的评价标准,纯属搞笑。<br />关于这点http://dbforums.com/arch/49/2002/12/584474<br />也有类似讨论。至于并发性能,我还是认为这种通过提供幻象读解决问题的方法,并不见得很好。[/url]