阿里巴巴王坚:“去IOE”不是技术升级 而是时代变化

2013年“双十一”,天猫成交额达350亿,支付宝成交笔数1.88亿,阿里巴巴再一次赚足眼球。

2012年起,阿里集团闪电般地拆分成7家公司、25个分支机构,并在金融业肆意扩张,在移动互联网领域大举收购……马云构建的阿里生态圈,正在从城邦成长为“帝国”。在这一系列高调动作的背后,实则与一位低调的人有关,他就是王坚。

2008年,王坚加盟阿里巴巴成为集团首席架构师,即现在的首席技术官。这位前微软亚洲研究院常务副院长被马云定位为:将帮助阿里巴巴集团建立世界级的技术团队,并负责集团技术架构以及基础技术平台搭建。

加入阿里后,带着技术基因和学者风范的王坚就在阿里巴巴集团提出了“去IOE”(在IT建设过程中,去除IBM小型机、Oracle数据库及EMC存储设备)的想法,并开始把云计算植入阿里的IT基因。阿里巴巴的“去IOE”运动引发了大型企业IT底层建设的新思潮,也使IBM、Oracle等国外大型厂商倍感压力。

随着“去IOE”的实施,阿里IT发展策略逐渐从依赖“商业软件”、到拥抱“开源软件”最终演变为自主技术和云计算服务能力,更为2009年“阿里云计算有限公司”的成立埋下伏笔。

2011年7月28日,阿里云自主研发的“飞天”云计算平台开始以公共云服务的方式对外提供云计算服务。IT支撑起阿里集团的业务闪变,并在淘宝、支付宝等核心业务之外,勾勒出了新的盈利模式——云服务。2013年8月15日,阿里巴巴“飞天”云计算平台的单集群服务器规模达到了5000台,这是中国互联网公司首次公布单集群规模达到了5000台。

新的IT格局支撑起阿里集团“平台、金融和数据”三大业务的发展;“阿里云”则成为阿里巴巴延伸向更多中小企业的重要触角。带着对阿里IT布局的探究,《商业价值》出版人刘湘明携CIO提问与阿里巴巴首席技术官王坚展开对话。

云计算是“去IOE”最好方法

阿里巴巴的成功经验表明原来依赖IBM、Oracle和EMC的系统是可以构建在Commodity PC上,这为大多数企业基于云计算平台搭建IT系统扫清了障碍,让他们可以彻底拥抱互联网。

从2008年11月加盟阿里集团开始,王坚在集团首席技术官和阿里云总裁角色之间不断转换。办公室里整墙贴满“云OS”效果图,与团队在“钟馗道-争端解决室”开会到深夜已成常态。王坚有着产品经理敏感执著的特质,他认为:“‘去IOE’最好的解决方式是采用云计算,而不是买来一台新的机器替代掉原有机器。”

“去IOE”的实施,使阿里IT发展策略逐渐从依赖“商业软件”、到拥抱“开源软件”最终演变为自主技术和云计算服务能力。这一过程的本质是分布化,让随处可以买到的Commodity PC架构成为可能,这提供了云计算落地的首要条件。

Q 博士伦中国公司 IT总监汪华:为什么“IOE”对互联网企业的发展是—个问题?“去IOE”和开源对IT团队的技术储备有多高要求?

A 在互联网时代,绝大部分企业,包括互联网企业,对计算需求难以通过IOE提供的技术满足,技术路径上依赖于专用的硬件设备比较危险。随处可以买到的Commodity PC架构对于阿里和大多数企业来说是最安全的,成本节约是“去IOE”最先显效的部分。

理论上只要计算能力够,“IOE”就一定能去掉!实际上“去IOE”这件事有技术挑战和风险,不是简单改变软硬件本身,它是“买计算”时代的产物,最好的解决方式是采用云计算,而不是买来一台新的机器替代掉原有机器。开源技术只解决了软件使用成本的问题,而忽略了开源软件的升级和维护成本。

Q 宁波方太厨具有限公司CIO 邴:是否有一天企业都采用开源,而且没有软件供应商只有服务供应商时,IT建设的一些困难才能够解决?

A 阿里最早依赖商业软件,从拥有20多个节点的Oracle RAC数据库集群(当时是亚洲最大),到成为开发使用开源软件MySQL最好的企业之一,到研发自己的关系数据库OceanBase用于不同的业务场景。这样的演变路径也表明:商业软件、开源软件跟自有技术永远是搭档,对于不同企业来说只是百分比的问题。对大的互联网企业来说自有技术变得非常重要,未来“云计算平台+自有技术+开源技术”会变得越来越重要。

Q 中国南方航空公司技术总监龙庚:阿里云、天猫和淘宝的技术体系是怎样的?在“去IOE”过程中,他们是如何协同?阿里下一步发展对技术会提出什么样的要求?

A 支付宝、天猫和淘宝,阿里云的实际技术应用确实有所不同,但阿里巴巴整个技术体系是协同在一起的。阿里整体技术的协同效率可以用几个关键的事例来说明:第一是在“去IOE”过程中逐渐建立起对技术方向的认同和协作,淘宝的业务拓展如果没有技术、产品和业务等各团队的相互协同,是一件不可能的事;第二是在2011年,阿里集团所有的技术后台运维和运营部门都集中在首席技术官下面,成立统一的技术保障部,从工具到理念都在融合,这适应了集团业务的快速发展和变化,并成功驾驭了大型互联网企业的技术挑战;第三则是业务驱动的技术协同,淘宝“聚石塔”、支付宝“聚宝盆”等业务,都是在业务驱使下运行在阿里云“飞天”平台上,它是一种自然协同的结果。

今天我们看到的互联网只是冰山一角,等到量子计算出来以前,我们在相当长的时间里要受现在计算框架的局限,云计算也是阶段性的产物,未来如果没有像量子互联网公司的发展也是会有很大的瓶颈。从这个角度讲,互联网经济对计算的依赖就像传统的工业对石油跟煤的依赖一样。量子计算不突破,互联网经济会有很大障碍,这是我们一定会面对的事情。

阿里巴巴如何“去IOE”

“去IOE” 最好的解决方式是采用云计算,而不是买来一台新的机器替代掉原有机器。

2013年5月17日,阿里集团最后一台IBM小机在支付宝下线。这是自2009年“去IOE”战略透露以来里程碑式的一个节点,阿里集团只剩下部分Oracle数据库和EMC存储。7月10日,淘宝广告系统使用的Oracle数据库下线,淘宝彻底告别Oracle数据库。

作为整个集团的首席技术官,王坚负责每年集团IT预算和规划,他意识到对于传统IT厂商的依赖使得相关技术及其维护已不在阿里自己管理的范围之内,例如,大存储对客户而言基本就是“黑盒子”,客户都不能自行进行重要的维护,“去IOE”解决了影响淘宝和支付宝长远发展的问题。

在阿里巴巴“去IOE”成功的大背景下,王坚的观点是:“去IOE”不是简单改变软件和硬件本身,而是用新的互联网技术和架构取代传统的IT技术和架构。

王坚认为阿里“去IOE”的成功原因有三:一是企业的战略决心足够强大;二是能够坚持到底,并愿意承担技术上、组织上的各种风险;三是要有使命感的人和团队去完成一件看起来不可能的事。

Q 阿里巴巴为什么要做“去IOE”这件事?“去IOE”经历了怎样的过程?

A 2008~2009年,我在做整个集团的预算时,第一次提出了“去IOE”这件事。我负责整个集团技术预算拟定,当看到阿里巴巴对计算需求成指数级增长,并跟业务增长不成比例时,就意识到如果没有技术的进步,一定会影响到公司长远的发展。

做预算不仅仅是“钱”的问题,而是考虑集团未来如何发展的问题,也是思考技术战略的机会。“去IOE”不是一个人的决定,你需要分析企业业务情况,哪些业务适合尝试“去IOE”。阿里比较幸运,当时淘宝的技术团队愿意创新,愿意去尝试“去IOE”这件事,并最早承担这件事的技术和业务风险。“去IOE”的过程也是技术发展的过程,比如以淘宝为基础形成了优秀的Mysql数据库团队,也建立了自己开发数据库Oceanbase的团队。现在的团队来自各事业部,双管齐下,这是一个极大的长期投入,不磨五年是磨不出来的。当支付宝最后一台IBM小机下线时,整个技术团队非常自豪。

当时我们考虑“去IOE”并不仅仅出于对成本的考量,最重要的是要满足企业未来长期发展的需要,传统IT架构的软硬件已经无法满足企业拥抱互联网方面的发展。阿里巴巴的成功经验表明原来依赖IBM、Oracle和EMC的系统是可以构建在Commodity PC上的,这为大多数企业基于云计算平台搭建IT系统扫清了障碍,让他们可以彻底拥抱互联网。

这一过程最痛苦的是要伤害天天跟你在一起工作的人,你身边的同事可能学的就是这个技能,突然告诉他你的技能没有用了,这是非常痛苦的事情。云计算让我们跨越了技术上的一些门槛,但是我想可能很多公司会过不了我前面说的坎。

Q 传统企业“去IOE”的可能性有多大?哪些企业具备“去IOE”的条件和动力?

A 如果对云计算带来的冲击认识足够,就会明白“去IOE”不是一次技术升级。云计算对传统IT和开源软件都是有冲击的,这是时代的变化,而不是一个技术策略的选择。

从硬件和软件底层着手“去IOE”,这件事情不该每个企业都做。如果要说一个很直截了当的答案,我会表明一个观点:如果企业觉得已有的云计算服务不能满足IT需求,那么它适合自己完成“去IOE”,我认为大部分传统企业都是没有可能和必要自己实现“去IOE”。

“去IOE”既有技术挑战,也受市场条件的约束,有机会成本问题,也受人才资源的限制。所以帮助大多数传统企业解决“去IOE”的最好途径是云计算,对企业来讲这是一个好的可以长期发展的路径。

对传统企业来讲,“去IOE”是在做一个选择,是在选择是否信任云计算是一种公共服务,就像企业信任国家电网供电一样。 “IOE”本身是软件时代或者说买计算机时代留下的产物,而到了云计算时代,实际上变成一个买“计算”的时代,不是买“计算机”的时代,所以IOE应该用服务的方式去掉。这个过程中的挑战是,你心里是否接受云计算,而不只是技术上接受。

Q 您怎样看待“去IOE”的人才培养过程?

A 阿里巴巴的技术积累超出很多人的想象。我们真的有很多很好的人才,他们不仅熟悉业务,对技术的理解也不是一般人可比,更重要的是他愿意“革自己的命”,绝不担心“去IOE“会让自己原来的技能没有用。这时候理想变得比什么都重要。

大多数严重依赖IOE的企业在技术人才培养上有点“拿自己的钱给别人交学费,但却给自己戴了手铐”,中国企业对技术的需求旺盛超过世界上任何国家和地区,所以技术上面临的挑战也超过了他们,正是我们对国外IT企业的软硬件的依赖而导致我们失去了很多自己发展的机会,而且国外的技术未必能解决中国企业的问题。“去IOE”的经验表明,现在我们有一次机会把我们的需求和钱用来发展适合长远发展的技术,让IT围绕自己的产品来发展。

对于我们自己的人才选择,阿里很谨慎,很多在国外厂商干过的顶级人才,并没有轻松地收到聘书,这是因为在企业中跟着别人做事,和在阿里用使命感开闯出一片天空有很大不同。“去IOE”需要极其合适的人才,才能带出一支像样的队伍,团队里每一个人的潜力也是逐渐被激发出来的。

揭秘阿里巴巴“双十一”IT部署

“双十一”时每个商家承担比平时大十倍、百倍甚至千倍的容量,这些因素加起来是让云计算变成唯一可以解决这个问题的方法。

2012年的“双十一”,阿里巴巴创造了191亿的日交易额神话,其中有20%商家的订单都通过阿里云的平台来处理,在流量剧增的情况下实现了系统零故障、订单零遗漏。2013年“双十一”,支付宝销售额达350.18亿元,提升了75%。

2013年阿里云开发者大会上,阿里云业务总经理陈金培透露:很多商家将O2O以及其他线上线下业务搬到“聚石塔”平台上,同时阿里云也针对银行推出了“聚宝盆”业务,解决银行支付贯通的问题。8月15日,阿里巴巴飞天云计算平台的单集群服务器规模达到5000台,服务淘宝的数据开放平台以及阿里金融的数据处理业务都成功地转移到这一平台上。

Q 2013年“双十一”王坚博士专门从英国飞回国督阵,阿里云是怎么帮助天猫、淘宝度过这么大一个“洪峰”的?

A 阿里云支持“双十一”主要是从三个角度:支付问题、淘宝自身和来自客户的挑战。支付的难点在银行,2012年淘宝和天猫的总交易额有191亿,交易笔数是1.028亿笔。结算笔数非常重要,因为在银行承担不了的前提下,支付宝的技术能力决定了系统的承载能力。以前,交易量过大时支付宝就会对交易进行排队,延迟交易。但“双十一”的交易量太大,延迟时间太长会产生很大的用户体验问题,所以支付宝提前鼓励用户先充值进支付宝,这笔钱的规模当时达到了几十亿,把对银行系统的压力直接转嫁到了支付宝系统上,使得“双十一”当天的交易顺利进行。并且在2013年,中国的中小银行系统也可以跟支付宝对接了。

淘宝自身的挑战在于面对突然出现的并发流量和意外情况时,如何保持系统的稳定性并完成天文数字的交易量。在意外情况下,淘宝无法预测用户行为,任何一个局部的问题都有可能演变为一个全局的问题,这是困难所在。“双十一”当天阿里集团近千名技术和业务人员坐在一起,用一个指挥体系处理问题,准备了几百种预案。

解决淘宝客户的问题主要依靠阿里自身的技术力量,比如 “聚石塔”项目将天猫和淘宝卖家的全部交易流程都部署在阿里云平台上,保证交易系统的稳定性才能保证交易顺利完成。把卖家的ERP系统完全架设在云上,这件事的难度和意义比只解决网站流量扩容要大,因为从发票打印到发货都要通过这个系统,不同的ISV(独立软件开发商)也在其中起了关键的作用,让人们体会到一个生态的价值。2013年,淘宝的目标是让75%的交易在云上完成。

Q 为什么商家在云上跟在本地部署会有这么大的区别呢?

A 首先,现在中国的IT不像大家想象的那么好,很多小企业的IT建设不仅受制于成本,还受制于人才,云计算可以帮这类商家把业务搬到互联网上来处理。其次,一笔交易从一个数据中心转到另一个数据中心,这当中有很大的不确定性,因此互联网基础设施非常重要,云技术可以帮助大家解决互联网基础设施问题,“双十一”时每个商家承担比平时大十倍、百倍甚至千倍的容量,这些因素加起来是让云计算变成唯一可以解决这个问题的方法。

Q 我记得2012年您大概为“双十一”准备了几百个预案,2013年有没有什么不同的准备?2013年的“双十一”跟上年的“双十一”有什么不同?

A 2013年“双十一”时整个系统的成熟度更高。上年花了大概37分钟支付宝里有了第10亿销售额,2013年大概只花了6分钟就到了10亿。对云计算最有挑战的不是在下单那一刹那,是第二天要发货打单,所有东西都要上云,有的商家最后会因为打发票机器数不够发不出货。