去IOE 我们达到了预期目的
——访阿里巴巴去IOE战略实施者 周宝方

2015-08-07 12:06
信息安全与通信保密 2015年5期
关键词:开源支付宝淘宝

本刊记者 杨 晨

去IOE 我们达到了预期目的
——访阿里巴巴去IOE战略实施者 周宝方

本刊记者 杨 晨

周宝方:曾任阿里巴巴集团数据库技术部负责人,阿里“去IOE”战略的主要实施者,当前为阿里巴巴基础设施“数据化运营”战略部门负责人。

IOE的高成本、高风险在业界已被诟病多年,中国头号互联网企业阿里巴巴集团凭借其雄厚的技术积累,敢为天下先,在中国率先推动去IOE实践,达到了公司预期目的,也为业界同行去IOE提供了可以效仿的样板,增添了信心。日前,记者走进阿里,力求从这个电商巨人那里探寻去IOE的成功之道,阿里去IOE战略的实施者,当年曾任阿里集团数据库技术部负责人的周宝方愉快的接受了记者的访谈。

记者:阿里当年推动去IOE的初衷是什么,目前是否已经达到了预期的目的?

周宝方:提到这个问题,阿里不希望“去IOE”的初衷归结到两个极端:一是单纯变为企业成本问题,二是简单地变成一个是否用国外产品和技术的问题去讨论。成本降低是“去IOE”最先能够看到的,但最根本的原因是在互联网时代,不只是互联网企业,绝大部分企业对计算需求难以通过IOE提供的技术来满足了,IOE约束了企业长远的发展;技术路径上依赖于专用的硬件设备比较危险,随处可以买到的消费级服务器的架构长远来讲对于阿里和大多数企业则是较为可靠的选择。对于成本,我想说今天所有讲的开源技术只解决了软件使用成本的问题,而忽略了开源软件的升级和维护成本。

“IOE”是软件时代或是“买计算机”时代的产物。 “去IOE”最好的解决方式是采用云计算,在云计算时代,则变成买“计算”的时代,而不是买来一台新的机器替代掉原有机器。这是一个行业的变化而不是简单的策略选择。

2008年,阿里巴巴提出“去IOE”的想法,开始把云计算植入阿里的IT基因。

2010年起,淘宝不再购买小型机,阿里进一步提出用开源数据库MySQL+自研数据库OceanBase替代Oracle,并不再使用高端存储。

2013年5月17日,阿里集团最后一台IBM小机在支付宝下线,成为一个里程碑式的节点,阿里集团只剩下部分Oracle数据库。

2013年7月10日,淘宝广告系统使用的Oracle数据库下线,淘宝彻底告别Oracle数据库。

至此,阿里巴巴完成了为期5年的“去IOE”之路,在中国,阿里是第一个且唯一真正实现“去IOE”的公司。

记者:阿里去IOE有何经验与业界分享,您认为哪类企业适合去IOE?

周宝方:理论上只要计算能力够,所有企业“IOE”都能去掉!但实际上“去IOE”这件事有技术挑战和风险。

对绝大多数企业,“去IOE”不是简单改变软件和硬件本身,用新的软硬件取代旧的软硬件,而是用新的方式取代旧的方式,是用云计算彻底改变IT基础架构。

“去IOE”存在一定的技术挑战,“去IOE”不是简单改变软件和硬件本身,用另一种软硬件简单地取代已有的软硬件,而是用新的互联网技术和架构取代传统的IT技术和架构。阿里巴巴本身并不卖软件和硬件,但这种技术能力可以用云服务的方式来提供给第三方使用,让云计算彻底改变传统IT的基础架构。对大多数企业而言“去IOE最好的解决方式是采用云计算,而不是买来一台新的机器替代掉原有机器。

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

正是因为这是一次IT基础设施的变革,从硬件和软件底层着手“去IOE”这件事情不该每个企业都做。如果要说一个很直截了当的答案,我们有一个观点:如果企业觉得已有的云计算服务不能满足IT需求,那么它适合自己完成“去IOE”,其实,要做“去IOE”这件事情,是有技术挑战的,也受市场条件的约束,有机会成本问题,当然也有总体人才资源的限制。所以最好帮助大多数传统企业用户解决“去IOE”的途径是云计算,云计算提供的计算服务可以将“IOE”去掉,对企业来讲这是一个好的可以长期发展的路径。

对传统企业来讲,“去IOE”的根本是在做一个选择,是在选择是否信任云计算是一种公共服务,就像企业信任国家电网供电一样。

企业自己去IOE意味着要重复阿里今天做的很多事情,这是一个长期投入,而阿里云可以给企业“去IOE”帮助的是直接提供云计算服务,我们已经帮助一些小银行做了;阿里也愿意将自己“去IOE”的经验分享,这也是全社会的财富,但没有办法把“去IOE”的积累变成软件硬件卖给企业,我们不是传统的IT设备和软件提供商。

其实,去IOE的本质不只是成本,也不是国产化,是云计算比传统的IT架构(IOE)更加合适现今企业的需求。互联网化、移动化、大数据化等,传统IOE都没有高效的解决方案,IOE没法让用户及时使用最新的功能及硬件等。

记者:去IOE需要新的技术架构加以替代,可否介绍一下这方面的情况?

周宝方:阿里的技术发展从主要依靠商业软件到依靠开源软件再发展到更多的自有技术或是说云技术。

阿里最早依赖商业软件,从拥有20多个节点的Oracle RAC数据库集群(当时是亚洲最大),到成为开发使用开源软件MySQL最好的企业之一,到研发自己的关系数据库OceanBase,也已用在了不同的业务场景。从用Oracle做处理数据,到用Hadoop集群(是业内单个机群节点数最多的Hadoop机群),再到用自己飞天平台上的ODPS。这样的演变路径也表明:商业软件、开源软件跟自有技术永远是一个搭档,对于不同企业来说,只是百分比的问题,对于大的互联网企业来说自有技术变得非常重要。阿里巴巴的许多自有技术,如飞天的核心平台通过云计算的方式开放给别人,所以云计算是适合许多企业的另一种方式。我相信在未来,对大多企业来讲,云计算平台+自有技术+开源技术会变得越来越重要。

在互联网时代,运行在数据中心里的软件面临运营的挑战,复杂度很大。从使用软件(包括开源软件)到运营数据中心里的软件是一次根本的变化,大部分企业还没有这种服务能力,社会的分工也不能要求每个企业都去做这种运营。云计算给了企业一个机会,企业不需要买软件,就可以享受最好的服务和计算能力。这就是为什么在互联网时代,云计算平台+开源软件+自有技术会是一个基本格局,传统靠收许可和服务费的商业软件会越来越没有市场。

记者:去IOE后,阿里的技术团队和整体技术力量上发生了怎样的变化,可否剖析一下这方面的变化带来的利与弊?

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

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

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

我自己觉得,大多数人对阿里巴巴集团技术人员的技术能力还不太了解,阿里巴巴的技术积累一定超出很多人的想象。我们真的有很多很好的人才,很多参与“去IOE”项目的工程师,对业务非常熟悉,对技术的理解也很深刻,更重要的是他们愿意“革自己的命”,绝不担心“去IOE“会让自己原来的技能没有用,这时候理想变得比什么都重要。

大多数严重依赖IOE的企业在技术人才培养方面有点像“拿自己的钱给别人交学费,但却给自己带了手铐”,中国企业对技术的需求旺盛,超过世界上任何国家和地区,所以技术上面临的挑战也超过了他们,但我们主要使用的是国外传统IT企业的软硬件,而别人也没有现成的技术能解决你的问题,我们自己也因为这种依赖而失去很多机会。阿里巴巴曾经选用过Greenplum是一个很好的例子,付了很多学费。“去IOE”的经验表明,现在我们有一次机会把我们的需求和钱用来发展适合长远发展的技术,让IT围绕自己的产品来发展。

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

记者:新的技术架构在迁移过程中遇到了哪些瓶颈,阿里又是怎样突破这些瓶颈的?

周宝方:去IOE之前,淘宝在数据库方面需求最大,痛点最多,阿里技术保障当时的负责人刘振飞操刀去IOE,希望可以从淘宝开始。整个集团内部当时对去IOE充满焦虑,而淘宝团队居然站出来同意当小白鼠,刘振飞至今对此心存感激。

机缘巧合,淘宝在技术层面的一次更新也让去IOE更容易。2009年,淘宝因为自身业务需求,核心系统进行过一次服务改造,即在数据库和应用层之间增加了一个服务层,屏蔽了数据层的复杂性。

淘宝项目得以成功推进后,示范效应出现,阿里巴巴的B2B和支付宝陆续进入。2012年底,淘宝系去IOE完成。2013年5月17日,阿里集团最后一台IBM小型机在支付宝下线。而EMC存储设备在2013年中全部下线。

记者:新的技术架构对于更好地实现技术对阿里不断出新的商务模式和服务理念的支撑作用带来了哪些帮助,可否谈谈您对这方面的理解?

周宝方:支付宝、天猫和淘宝、阿里云的实际技术应用确实有所不同,我们也一样会遇到所有公司都会遇到的挑战,但我们很幸运的是阿里巴巴整个技术体系是协同在一起的。

阿里整体技术的协同效率可以用几个关键的事例来说明:第一是在“去IOE”过程中逐渐建立起对技术方向的认同和协作,当淘宝刚开始做这件事的时候,没有技术、产品和业务等各团队的相互协同,这是一件不可能的事。

第二是在2011年,阿里集团所有的技术后台运维和运营部门都集中在首席技术官下面,成立统一的技术保障部,原来在不同子公司和事业部的人,从工具到理念都需要融合,结果表明这样对适应集团业务的快速发展和变化是很成功的,并且能够用这样的方法驾驭大型互联网企业对技术服务的挑战。这一过程中,我们经历的技术和组织的挑战与付出的学费可以被其他企业借鉴。

第三则是业务驱动的技术协同,淘宝“聚石塔”、支付宝“聚宝盆”等业务,都是在业务驱使下使得各自客户的IT系统运行在了阿里云“飞天”平台上,它是一种自然协同的结果。

记者:去IOE后的阿里系在去年双十一大促期间有上佳表现,相对IOE时代,企业网络信息系统的效率、安全性、稳定性有了怎样的提升?

周宝方:淘宝“双十一”关键要解决三个问题:支付问题,淘宝自身的问题和淘宝客户的问题。2014年“双十一”淘宝和天猫的总交易额有571亿,最高交易峰值80000笔/秒,最高支付峰值38000笔/秒,对于这样的极端高并发和海量交易,阿里希望引导用户尽可能用支付宝完成支付,这样我们对整个系统的容量可控。

以前,交易量过大时银行支持会出现问题,支付宝就会对交易进行排队,延迟交易。但“双十一”的交易量太大,延迟时间太长会产生很大的用户体验问题,所以支付宝提前做了鼓励用户先充值进支付宝的活动,这笔钱的规模当时达到了几十亿,一定程度上缓解了银行的压力,把对银行系统的压力直接转嫁到了支付宝系统上,使得“双十一”当天的交易顺利进行。“双十一”表明了支付宝的支付系统是世界一流的。

第二,淘宝自身的挑战在于面对突然出现的并发流量和意外情况发生时,如何保持系统的稳定性并完成天文数字的交易量。就像电影院虽然修了安全通道,但有意外观众仍然可能不按紧急通道的提示行动,而伤到人,紧急情况下用户的行为是没有办法预测的。淘宝也是一样,在意外情况下,仍然无法预测用户行为,本来没有流量的地方,可能会突然跑出一个吓人的流量,任何一个局部的问题都有可能演变成为一个全局的问题。“双十一”当天阿里巴巴集团近千名技术和业务人员坐在一层,用一个指挥体系处理问题,准备了近五百种预案,因为现场出现问题再去解决肯定来不及,一个回车键敲错了,可能那个系统就瘫痪了。“双十一”也表明了淘宝和天猫的交易系统是世界一流的。

第三,解决淘宝客户的问题主要是通过阿里自身的技术力量去解决客户面临的问题,比如阿里的聚石塔电商云,将天猫和淘宝卖家的全部交易流程都部署在阿里云计算平台上,保证他们交易系统的稳定性,从而保证他们的交易顺利完成。

过去,交易从淘宝链接到卖家后台系统的过程中,如果卖家IT基础设施薄弱,系统交换数据会因为网络等各种原因不通都可能会使交易失败。以往买家买一个东西只需要点击购买,然后进行支付,这个动作会指向两条IT路径:一是连接支付宝,保证有钱可以完成支付;另一条则是进入卖家的ERP,卖家需要知道自己是否有库存,并减掉相应的货品数量。把卖家的ERP系统完全架设在云上,这件事的难度和意义比只解决网站流量扩容要大,因为从发票打印到发货都要通过这个系统,不同的ISV(独立软件开发商)也在其中起了关健的作用,让人们体会到一个生态的价值。

卖家把ERP搬到云上,也证明了对云计算的信任,目前已经有超过98%的天猫卖家使用聚石塔,在过去两年的“双十一”中,都实现了零丢单。这不仅仅是为客户节约成本,更是帮助卖家提升赚钱的几率。这件事的本质反映了:云计算是一场改革,给客户创造业务价值的意义,远远超过了成本本身。

记者:去IOE前后的两种技术架构,在实现企业信息安全的方法和路径方面有何异同,您认为,后者应该如何发挥好人工运维和软件定义的优势做好企业的信息安全保障?

周宝方:说到企业的信息安全,金融机构的要求是最高的。他们对阿里的诉求很简单,安全和稳定。为了更有说服力,阿里手里拿着各类安全认证,但在交流中,阿里更愿意讲自己的案例。支付宝在去IOE的过程中,为了满足金融行业的应用场景做了许多针对性开发,其核心交易系统已经切换到阿里自研的OceanBase数据库上。

众安保险的基础架构即基于阿里云,在开业前花了五个月的时间完成两地三中心的部署。系统上线五天就被拖进“双十一”,当天产生160万笔保单,系统处理保单花了2个小时。这样的处理能力,成为阿里云对外业务介绍时的案例。

技术界至今仍有声音认为,IOE比开源技术更安全。但阿里上下对此众口一词称是误解,并解释开源软件的优势在于开放透明,大家都可以来发现和纠正安全隐患。

安全忧虑的本质是信任问题,信任问题惟一可以解决的方法是靠透明。企业、机构或政府要做的是信任选择,选择信任传统硬件厂商,还是阿里云计算服务。

猜你喜欢
开源支付宝淘宝
校园“淘宝”
五毛钱能买多少头牛
2019开源杰出贡献奖
奇客巴士支付宝旗舰店
零花钱
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
淘宝试衣间
淘宝
支付宝这样进医院