|
最初由 yhangw 发布
[B]
我认为就Oracle与DB2有竞争的部分来说Oracle的cluster对DB2确实有优势。
与RAC对应,DB2没有一个完全对应的冬冬。
对于海量数据的BI系统,DPF+HACMP地解决方案缺点在于切换时间一般稍长--其实也看具体实施,目前的实施一般在比较简单的层次上。澄清一点,这种方案里面,一个节点down并不一定导致其他节点不可用,不涉及该节点的sql还是能跑的。当然,主节点down除外。
如果小数据量的交易系统,HADR提供了远比RAC更快速的切换,一般在秒级。缺点是目前不能应用多个节点。 [/B]
补充一下。
关于cluster,请大家分清楚两个概念:cluster for scalability vs. cluster for high availability。我们说的扩展性scalability是指
“性能的提高/节点的增加”,不是简单的叠加节点数目。Oracle试图使用RAC来同时达到高可用性和可扩展性这两个目的。DB2 UDB针对高可用性的解决方案是HADR,针对可扩展性是share-nothing的DPF分区技术。
孰优孰劣?
RAC看起来很美,但share-disk架构会导致节点数可扩展性很差,最大的瓶颈在于节点间通讯。另外,高可用性方面,RAC的节点fail后也不是完全透明、对整个机群的可用性完全没有影响。这点我相信熟悉Oracle的朋友会比我更清楚。
DB2 UDB的分区技术对应用规划设计有比较高的要求。设计的不好,无法获得高性能和扩展性是必然的;但设计得好,是RAC无法匹敌的,目前最多的DPF是1000个节点。高可用性的解决方案目前有很多:HACMP/Veritas/IBM TSA一类的cluster软件,Replication,还有新的HADR。正如yhangw所说,HADR可以做到秒级切换,(我不知道RAC能否做到?)缺点是目前还不支持DPF。至于DPF+HACMP的认识误区,yhangw已经提过。
我个人的观点是,RAC易于实施,但效果如何,是不是能达到真正的扩展性和高可用性,需要冷静思考。不可否认,RAC把这两个技术点合二为一的市场定位,很容易让客户感觉良好,但可能是一个错觉。而DB2的确受国内当前的技术水平和条件制约,要有一个良好的实施比较困难。这也是我们大家需要继续努力的地方。
附上一个视角比较客观的白皮书,虽然是IBM发表的,但内容是Oracle专家提出的:
Much to Oracle’s chagrin, an article has been published in the
International Oracle Users Group Select Journal (3rd Qtr. 2003)
entitled “You Probably Don’t Need RAC”, authored by Mogens
Norgaard, a renowned Oracle expert and member of an elite group of
40 Oracle specialists (known as the Oak Table Network). The
conclusion of the article states, “Most likely, you probably don’t
need RAC. Alternatives will usually be cheaper, easier to
manage and quite sufficient.”
欢迎大家一起讨论。 |
|