|
好问题!
原帖由 liduanfeng 于 2011-5-10 17:36 发表 ![]()
1.DB2和ORACLE相比,优势在哪些地方?
2.DB2和ORACLE相比,在数据库设计方面要注重哪些地方?
3.DB2的集群方面优越性?
4.DB2的数据库在海量的存储数据中如何解决并发、迁移该类似的问题?
现在DB2广泛应用金融、通信领域,希望能借此机会学习学习。
1.DB2和ORACLE相比,优势在哪些地方?
孰优孰劣?仁者见仁,智者见智。举些点例:
a,体系上:支持share-nothing的架构,使得建立海量数据仓库成为可能
b,设计上:和Oracle相比,有一些独特之处,例如MDC,WLM等
c,开发上:同时支持SQL/PL和PL/SQL两种业界主流存储过程开发语言,可参考舞动DB2系列之开发篇《从Oracle到DB2开发---从容转身》
d,维护上:内存、磁盘、日常例程等实现了自治管理。
2.DB2和ORACLE相比,在数据库设计方面要注重哪些地方?
先讲一个误区。由于很多puber都熟悉Oracle,所以通常会拿Oracle的设计思考DB2,这是经验主义的问题。DB2在逻辑设计上有很多自身特点,运用得好的话,可以事半功倍。例如索引设计上,DB2提供的INCLUDE字段到索引空间,效果称道。具体的可以参考我在2011数据库技术大会的演讲PPT。
3.DB2的集群方面优越性?
DB2目前是业界同时支持share-disk和share-nothing架构的数据库。share-disk就是db2 purescale, 比RAC的扩展能力更强;share-nothing就是通常说的DPF,支持BCU配置,用来构建数据仓库,例如经营分析系统,在电信行业install base很大。
4.DB2的数据库在海量的存储数据中如何解决并发、迁移该类似的问题?
DB2的并发有几个层面,A,I/O的并行 B,查询的并行 C,事务的并发。DB2依赖这几个层面的共同作用来提升并发能力。在DB2 V9.7中,改善了锁的性能,对同一条记录的读事务可以不被写事务阻塞,通过current commit来设定。在舞动DB2系列之运维篇《运筹帷幄DB2》中有详细讲解。
至于同构数据库迁移,并无特别之处;从Oracle向DB2迁移,推荐一篇文章叫做:当Oracle遇见DB2。 |
|