弃Oracle用DB2 解密可口可乐数据库迁移
2011-03-25许继楠
许继楠
用了多年的Oracle,联合可口可乐瓶装公司在做了一项评估之后,决定改用DB2。
堪称世界最有价值品牌之一的可口可乐,每天要配销 10亿杯以上的饮料到全球五大洲、超过200个国家。为了达成制造与销售的任务,为可口可乐制造、销售饮料的联合可口可乐瓶装公司 (Coca-Cola Bottling Co. Consolidated,CCBCC)多年前即将SAP ERP平台部署在 Oracle 数据库上,以处理相关的流程及产销存信息。然而,随着产量增加、流程改变,以及希望提升效率等原因,原来的SAP平台已不能满足需要,此时 CCBCC 需要将 SAP R/3 Enterprise 系统升级至 SAP ERP 6.0,但这样一来,就必须拿出大笔资金,升级Oracle 数据库,并且要购买额外的 Oracle 使用及维护授权。
在做了审慎的评估之后,CCBCC 最后决定不升级 Oracle 数据库,而转为采用DB2。2008年4月份,CCBCC将SAP迁移到了DB2平台。现在三年过去了,CCBCC技术部门的Thomas De Juneas和Andrew Juarez近日来到中国,讲述了他们的使用感受。
节省软硬件及维护成本
为什么CCBCC会做出弃Oracle用DB2的决定?CCBCC当时做了一项成本评估,发现使用Oracle和DB2在成本上的差异巨大,这既包括软件成本也包括硬件成本。经过三年的使用,CCBCC验证了当年的评估结果。“当时是出于节省的目的,后来随之得到可靠性、易用性以及性能上的好处。”CCBCC首席SAP Basis/DBA工程师Andrew Juarez 说。
从软件成本上看,使用Oracle和DB2差异明显。对CCBCC来说,Oracle的软件许可费用每年有5%的增长。而升级SAP就要升级现有的Oracle数据库,并购买其他Oracle许可证,就面临着增加新的采购费用。
“在SAP升级的过程中,就看到如果继续在Oracle上面跑,成本会更多,需要花很多的钱购买Oracle的许可。为什么不能看看DB2?因为DB2跟SAP合作了。” CCBCC系统经理Thomas De Juneas说。
“我们发现DB2获得软件许可的费用不是每年都增长,基本上是持平的。即便是采购了新的SAP HR模块产生了数据库成本的增加,但是DB2的增加和Oracle的增加来比较,还是比较低。” Andrew说。Thomas和Andrew一直在想如何降低成本,碰巧那时IBM也在销售DB2,他们就开始了解DB2的功能、特性和使用成本。
从硬件成本上看,使用DB2可以带来存储成本的明显降低。如果不是三年前改用DB2,可口可乐早就需要购买存储硬件了。
使用SAP会产生大量供销存数据,甚至可以说SAP应用得越好,数据量就越多。这些数据随着生产不断地增长,在用Oracle时,可口可乐每个月数据的增长量是35GB。
Thomas和Andrew在考虑用DB2的时候,算了一笔账:同样多的数据,如果使用DB2 9的深度压缩功能(Deep Compression),可以节省很大的存储空间。依靠40%的压缩率,CCBCC现在每个月的存储增长是15GB,每月就相差20GB的存储量,那么长年累月节省的存储硬件的成本就非常可观了。
对CCBCC来说,迁移到DB2后,到2011年4月,数据量与2008年4月使用Oracle时数据量相同,也就是说,存储的增长能够延迟三年。
供应链效率提升65%
节流对任何一家企业来说都是至关重要的,“不差钱”的企业始终是少数。“对于我来说,我负责财务,如果只是性能好,而不省钱,我也不会拿到老板那边批。” Thomas说。但是更换数据库对企业来说是一个不小的IT项目,如果省了钱,而性能却不能保证,就是顾此失彼,非明智之举。
Thomas在跟他的老板提出更换数据库建议时,是打了包票的。他向老板保证,迁移不只是省钱,效能和稳定性也是可以保证的。
实际上,对CCBCC来说,数据库迁移后,SAP的执行比以前更加顺畅,更加快速。由于系统性能的提高,批处理时间减少了65% 以上,从而供应链的整体效率也得到了提高,这也就意味着CCBCC的供应链变得更加敏捷,市场竞争力也得到提高。
“今天早上跟其他客户谈过,他们迁移到DB2以后,物流经理第二天问他们,你们做了什么事情?为什么系统突然间好像快了很多?”IBM公司DB2/SAP销售Loke Peng Yuen说,很多客户在从Oracle迁移到DB2以后都明显感受到了性能的提升,“这个程序本来跑90分钟,现在只用了30分钟。”
运行更高的SAP版本,也意味着需要更多的系统资源,但SAP升级以后反而跑得更快了。“虽然工作量增加了580%,但是性能更好。”Loke说。
性能提升的原因在于DB2和SAP的深度合作。SAP ERP 6.0是在DB2平台上开发的。此前SAP的版本都是在Oracle的数据库上开发的。SAP与Oracle和DB2都有合作,为何性能表现前后差异如此之大?
“这是因为DB2跟SAP有更深层次的合作,DB2开放很多源代码。” Loke解释说,“我们不是在这里抨击别的数据库有什么样的问题,不是说别人不好,我们只是说,我们恰巧跟SAP有这样的合作关系,这样的合作关系导致了这样的结果。”
复杂操作变简单
CCBCC也受惠于SAP和DB2联合为SAP用户开发的简单易用的仪表盘,通过仪表盘SAP DBA Cockpit for DB2,数据库管理及监视作业可以轻松完成,这个仪表盘也非常易于DBA上手操作。
Andrew给记者展示了这一仪表盘。“坐在电脑前,整个SAP运行系统,包括数据系统,都一目了然。” Andrew说,“这是SAP和DB2共同开发的,专门为SAP用户使用的仪表盘界面。在这个界面上能够很详细地看到数据库的各种工作状态。”
操作数据库是比较复杂的工作,有上万个报表需要调整。如果没有仪表盘的话,用Oracle数据库,就需要非常有经验的Oracle的DBA;用DB2,就需要非常有经验的DB2的DBA。有了仪表盘之后对DBA的要求也降低了,因为很多操作都变得自动化和简单化了。比如性能仓库,在CCBCC,以前用Oracle需要几个小时来做;现在用DB2以后,几分钟就可以搞定。仪表盘减少了管理工作量,还降低了管理成本,因为所有的数据库管理和监控任务都可以通过仪表盘来完成。
Andrew举了一个例子,比如用户在查询昨天的汽水产量时,敲完回车键之后很长时间结果才出来,甚至到楼下抽根烟回来结果还没有出来。这时DBA就需要查出数据库变慢的原因,他就要看哪些地方影响了系统性能,就要去看很多表。如果没有数据库仪表盘的话,这需要花很长时间。
“那些还在用Oracle的用户看到这个仪表盘以后就问是从哪里来的。同为SAP系统,为什么我们看不到?”Loke解释说,“这是因为DB2跟SAP是深层合作开发,而在Oracle和其他数据库上,就没有这些仪表盘,用户需要的话就要自己去开发。”
迁移时间缩至18小时
谈到做大型数据库的迁移,Andrew说:“迁移最重要的是不要影响业务,这样就要把迁移时间缩到最短。最困难的问题在于把时间缩短,又不要影响业务运作。”
CCBCC使用DB2的深度压缩 功能,不仅如前面所说使存储成本降低,还可缩短后续 SAP 软件升级的备份时间和执行时间。“我们把迁移时间缩短到18个小时。” Andrew说。
迁移数据库平台,对绝大多数的企业来说,都不轻松。由于DB2对Oracle的良好兼容性,CCBCC的这次迁移过程很平滑。
“从Oracle转到DB2,大概有94%~97%的应用兼容,这也是可口可乐转移很成功的原因。DBA就很容易管理,虽然他之前没有用过我们的数据库,转到DB2以后也很容易上手。” IBM软件集团大中华区信息管理软件及业务分析总经理卢伟权说。
更换数据库,并没有给CCBCC的DBA带来困扰。因为用了多年的Oracle,CCBCC 的DBA具有很强的 Oracle 技能,他们花费了几周的时间就可以充分掌握 DB2 的技术。从 Oracle 到 DB2 ,数据库管理技术的转换很简单,因为 DB2 很友好。
“Oracle的DBA就可以管理DB2的数据库,所以不存在把员工都换掉的问题。只需要经过一些培训,就可以从管理Oracle转到DB2了。” 卢伟权说。
CCBCC的数据库迁移到DB2以后,系统可靠性也提高了。以前Andrew每天都会接到电话说系统出了问题,这次他出差已经两个礼拜他都没有接到电话。
Andrew认为在维护方面有一点他感受很深,现在他们可以直接打电话跟IBM DB2的技术人员谈一些技术问题,但是他在做Oracle的时候就没有这个机会。
“我在SAP方面也算是一个老手了,在Oracle这方面也已经有了12年的经验,我在DB2方面的经验就是这三年。2008年,我用两个月的时间来评估DB2,那两个月给了我很大的信心,这三年的使用也验证了我当时的信心,现在如果叫我回去用Oracle,我不会愿意,因为用过DB2之后,发现DB2用起来真的比较舒服。” Andrew说。
记者手记
他们俩如胶似漆
采访前不久,刚好看到一则新闻,欧莱雅、宝洁、汉高等8家化妆品巨头在欧洲被指控操纵价格,因此被处以高额的罚金。相比日化巨头的行业“合谋”,数据库市场的两大巨头Oracle和IBM的针锋相对甚至“恶语相向”是出了名的。
“我们炸掉了IBM的大门,我们要粉碎它的神话,我们要用一台占地面积不到IBM创下记录的计算机的10%的机器来打破这个记录。”
“在我看来,Oracle就是IBM的跟屁虫。我们将DB2数据库和我们自己的硬件结合,并专门对DB2进行了优化。我们这样做了十多年了,我一点也不觉得这有什么新鲜和可炫耀的。在处理器方面,我们早在20年前就开始为数据库进行优化了。”
……
二者之间是一场旷日持久的战争,拉锯战迫使他们不断升级武器:IBM对SAP运行在DB2上做了许多优化,加强与分析软件的结合;Oracle在Sun SPARC处理器上进行一系列针对数据库的优化。从去年双方各自亮出的“加速计划”和“破甲行动”可见一斑。
34岁的Oracle和18岁的DB2,最后谁能胜出,很难下定论。但相比几大化妆品巨头的亲密,二者如胶似漆、打得不可开交的关系对用户来说反而是大大的好事。引用论坛上一位坛友的话:“Oracle:笑傲江湖,惟我独尊;IBM:合纵联横,倚天屠龙;客户:鹬蚌相争,渔翁得利。”