最初的尝试是从淘宝开始的,首先是实现商品库Oracle数据库的读写分离,“从2009年开始,我们就尝试把一些不重要的业务迁移到MySQL上,核心业务开始梳理接口,为未来迁移到MySQL做到分库分表做准备,同时培养MySQL 人才 。”
之后是尝试去掉小型机,到2011年7月,在启动“去IOE”战略一年多之后,淘宝的商品库实现了“去IOE”。“2011年时,淘宝最核心的用户中心、商品完成从集中式到分布式的迁移,连交易系统也开始向MySQL迁移。”陈栋说。之后3年多时间,阿里集团开始在内部全面推行“去IOE”。
2013年5月,阿里集团最后一台IBM小机在支付宝下线。两个月之后,淘宝重中之重的广告系统使用的Oracle数据库下线,这是淘宝最后一个Oracle数据库。 “现在,整个阿里集团全面去掉了小型机和高端存储,数据库全部运行在PC服务器上,配置SSD或者PCIe Flash 。除了支付宝核心账务系统依然使用Oracle数据库,其他所有核心在线业务全部使用分布式MySQL 数据库。”陈栋介绍说。
而在周宝方看来,通过“去IOE”,阿里集团获得了很多的收益。比如,真正的技术团队会为此成长起来,另外成本可以控制在很低。系统和应用的架构可以做得足够开放灵活,能应对足够大的挑战。这样,阿里的很多技术都能积累起来,整体的框架和技术更多是自主可控的,不需要被很多技术左右。同时,在安全层面也可以相对有所提高。事实上,自阿里“去IOE”以来,目前已逐渐形成了自己的一个MySQL分支,做了深度的虚拟化,已有近万台服务器,而且还在疯狂增长,而由于目前多数核心数据存储在MySQL上,一些核心的数据和应用也正在往OceanBase迁移。这代表阿里基本具备不被任何商业技术绑架的能力。
表1 Oracle数据库与MySQL数据库对比
6
“去IOE”与国家信息安全
从技术层面还是从经济层面来衡量,阿里集团的“去IOE”都是十分成功的。也正是因为阿里集团的成功,使得“去IOE”被越来越多的人提起,很多行业用户也开始将目光聚焦于“去IOE”上。此时绝大多数用户对于“去IOE”的关注点还主要集中在技术路线和成本、灵活性等方面。
2013年6月,“棱镜门”事件爆发后,各国政府对于信息安全高度重视,而此时,“去IOE”也似乎又有了新的内涵。有人将“去IOE”上升到国家信息安全层面,认为采用“IOE”产品,会给国家信息安全带来很大的隐患。因此,应该用国内厂商的产品来全面取代“IOE”产品。
北京汇金科技股份有限公司副总裁 王舜林:“应该细分析,?去IOE?的本质是什么?对国内用户、IT服务商,乃至国内IT产业的发展都有很大的价值。”
“在一些关键行业和领域,例如银行、电信、政府、电力等,应该全面推行?去IOE?,用国产软硬件产品来替代?IOE?产品。”一位国内IT企业负责人如是说道。在他看来,“去IOE”应该被视为是一项国家战略,“因为,国家安全高于一切。” 那么,“去IOE”和保卫国家信息安全是否有直接的关系呢?
在陈栋看来,这绝对是个伪命题。“?去IOE?和国家信息安全根本就没有直接的联系。去了?IOE?就意味着安全吗?未必如此。”
事实上,即便是全面实现了“去IOE”,使用国产的产品来代替。但实际上,底层的芯片和技术仍然不是中国自己的。因此从某种程度上而言,所谓的通过“去IOE”来保卫国家信息安全,只是“换汤不换药”而已。
对于“去IOE”这样一个口号,苏州悦果互动信息技术有限公司执行董事王甲佳就表示了明确的反对。在他看来,目前这种逐渐向运动演变的趋势是很危险的,也带有很多情绪化的色彩。“我们更应该从商业需求的角度出发来看待?去IOE?,而不是凭着感觉或情绪,来进行判断。”
7
南瑞集团公司信通项目管理中心副主任杨华飞也认为,对于“去IOE”,应该理性看,不是单纯的将?IOE?妖魔化,走向一个极端。“要从用户的需求出发,看看为什么要?去IOE???去IOE?究竟能够给企业带来哪些好处和价值?这是在谈?去IOE?时应该做的。”
在冯大辉看来,在出现阿里这个成功案例之后,技术圈很是震动,曾经一度讨论热烈,随后则是国内产业界对此出现了一些跟风的倾向,不少公司则打着国产软件的旗号出来蒙人,这是值得警惕的。而且,去掉 Oracle 不意味着就要采用国产的数据库,因为 MySQL 以及衍生的各种分支数据库才是最佳选择。同样,不用 IBM 的小型机也不意味着国产服务器就迎来新机会,在用户那里,适合的解决方案才是最重要的。“去 IOE”不应该成为一个噱头。应该以自己的实际需求为前提,不能本末倒置。 “去IOE”源自于企业需求
“去IOE”的本质到底是什么?“是否?去IOE?,其实就是两种不同的IT体系架构和建设思路。”中科软科技股份有限公司总裁左春说。
左春所说的两种IT体系架构,其实指的就是:Scale-Up(纵向扩展)和Scale-Out(横向扩展)。在传统的IT建设模式下,用户更关注单机的性能和稳定性,尤其是在运行一些核心和关键应用时,对于性能和稳定性的要求更高,所以企业会花大价钱,购买功能最强、运行最稳定的设备和软件。这种模式,通常称之为集中式的单点系统架构,即Scale-Up架构。而阿里集团所推行的“去IOE”,实际上就是通过云计算技术,将多台PC服务器形成集群,并加之以开源数据库、分布式存储,来实现计算、存储能力的扩展。而这种模式,也被称之为分布式的并行集群架构,即Scale-Out架构。
可以看到,这是两种不同的IT建设思路和模式。事实上,从技术上而言,可能有新旧,但从需求角度而言,并没有对错之分。因此,“去IOE”的本质其实就是企业按照自身的需求,对不同IT技术架构的一种选择。
在王舜林看来,这两种建设思路和技术路线并非是指谁取代谁,而是用户出于自身发展需求而做出的选择。
8
表2 高端存储VS Flash技术 “去IOE”:不仅仅是降低成本
在谈到去IOE时,是无法和企业的需求割裂开来的。那么,“去IOE”究竟能给企业带来怎样的好处?
在大多数人看来,“去IOE”带来的最直接的好处无疑是成本上的节省。确实,成本上的节省是最能够直接看到的。从购买成本上而言,“去IOE”带来的节省确实是十分巨大的。
陈栋给记者算了一笔账,他们曾经为上海的一家企业做过“去IOE”方面的服务。在?去IO?之前,该企业采用的是Oracle的数据库、小型机和高端存储设备,系统、设备成本大约在一千八百万人民币左右,再加上厂商收取的每年20%的维保费,成本大约在两千万人民币左右。而如果采用了分布式的架构,去“IO”之后,只要一、两百万人民币的费用就能让系统运转起来,在性能方面至少提升5倍以上。
成本的节省并不是阿里集团开展“去IOE”的最根本原因。如果考虑到系统迁移后的总体成本,包括:新硬件成本、开发人员成本、运维成本、时间成本等等,整体计算下来,未必能有太多的节省。
“去IOE”给阿里集团带来的最大价值在于不仅避免了厂商的技术绑定,同时也让企业对于自身的技术发展和应用有了更强的把控力。这对于如阿里集团这类业务发展十分快速的互联网企业而言,显然具有很重要的意义,即企业可以根据自身业务发展的需求,随时对IT系统进行灵活地扩展和开发,而且通过不断地技术积累和储备,保持自身在技术方面的领先性。
9
阿里巴巴集团首席技术官、阿里云总裁王坚就曾坦言,其最怕将“去IOE”的原因归结到两个极端:一是单纯变为企业成本问题,二是简单地变成一个是否用国外产品和技术的问题去讨论,“成本降低是?去IOE?最先能够看到的,但最根本的原因是在互联网时代,不只是互联网企业,绝大部分企业对计算需求难以通过IOE提供的技术来满足了,?IOE?约束了企业长远的发展;技术路径上依赖于专用的硬件设备比较危险,随处可以买到的Commodity PC的架构长远来讲对于阿里和大多数企业则是最安全的。对于成本,我想说今天所有讲的开源技术只解决了软件使用成本的问题,而忽略了开源软件的升级和维护成本。”
“去?IOE?整个架构体系赋予了阿里非常灵活的技术架构,类似像在双11这样非常残酷的业务促销时,现在我们都能很淡定地做业务的扩容。”周宝方曾如是说。 随着企业对于IT技术的依赖性越来越强,企业在IT应用和技术方面的领先,很多时候会转化成为市场和业务竞争方面的优势。这也是为什么阿里集团“去IOE”成功后,很多企业用户也想效仿的重要原因之一。 “去IOE”升温
“2014年,会有更多的企业开始?去IOE?。”冯大辉曾这样写道。对于这一点,陈栋则有着更为直接的感受,“去年很多企业是在谈?去IOE?,但并没有太多的实际动作。而今年则有很大改变,很多企业已经开始立项,并且找一两个合适的场景来进行尝试。”对于陈栋和其所在的沃趣科技而言,每年的1月份一般是业务的淡季。但2014年1月,由于“去IOE”的升温,让他们比平时更加忙碌。
杨华飞看来,“去IOE”确实是目前企业IT建设的一个方向。“主要是为了让企业的IT应用更加自主可控。”
确实,以Oracle的数据库为例,很多国内大型企业用户采用的都是Oracke的数据库。一位行业用户IT负责人告诉记者,今年在询问数据库产品的招标价格时,Oracle数据库的价格一下提升了60%,而且是一口价,“如果购买的话,觉得价格提升这么多,不甘心。不买的话,企业的应用都是在Oracle数据库的基础上开发的。这让我们很不舒服,感觉就像吃了苍蝇一样。”该负责人介绍,现在他们已经在开始尝试“去
10