BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

没有回头路的RISC系统迁移之三要诀

| 作者 郑柯 关注 3 他的粉丝 发布于 2012年7月23日. 估计阅读时间: 13 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

时下,随着水平扩展(Scale out)的技术、实践和相关软件不断成熟,很多以前使用小型计算机的业务系统应用,出于成本考虑,准备向PC级或机架式服务器迁移,也就是要从CPU指令集采用RISC结构的系统,迁移到使用x86结构的系统。在Intel工作的“非仙居”,给出了此种迁移的三要诀:撞破南墙不回头,痛下杀手改架构,看准方向多投入。他的这篇博文,在微博上也引发了讨论。

非仙居看来:

国内迁移最成功最彻底的案例莫过于淘宝的商品库去O项目。结合自己亲身参与的别的几个案例,总结了三点自认为迁移成功的关键,和X86比之RISC系统的一些优劣,在此分享。

要诀1:撞破南墙不回头!

非仙居认为:

在现今的技术条件下,可以说没有一个系统是不能够从原先的RISC架构迁移到X86架构。关键就是看决策层领导层想不想这么干。

……

有得必有失,一旦你实在不能忍受RISC系统的高昂维护升级费用,封闭系统的各种局限,那你就要改头换面!但一旦你决定改头换面了那么势必原先的一 些你习惯了的地方也要完全被放弃掉,所以肯定是有很长的一段阵痛期!想先通过一些小规模尝试规避掉所有风险是不可能的。就像企业刚上RISC系统时也一 样,会有各类问题出现。但那时你没有选择,所以只能排除万难迎头而上。现在其实也一样,作为CIO,你要做好准备,一旦你决定了做RISC迁移了就是一条 不归路,你必须狠下决心就一条路走到黑,碰到问题也只以保证X86系统能按时上线为大前提!

遇到问题时,非仙居的建议是:

切割时候问题肯定会出现的。真的有决心就不是去畏畏缩缩的规避这些,而是下死命令告诉所有业务部门你只能用新的了,有问题有抱怨我们一起想办法在新系统上解决,短期有影响我们一起承担风险责任。

他认为拿周边小系统尝试没有意义:

因为在核心系统没改变的情况下,边缘系统的异构对于你来说只是增加很多无谓的各种兼容性问题故障排除的人工。

因此,一定要下定决心:

RISC向X86迁移这种事,一旦要干就要狠下死手只有华山一条路那么的去干!别说碰到困难,即使撞到了南墙也要把南墙撞破再往前走。

要诀2:痛下杀手改架构!

非仙居看来,RISC架构系统迁移时,体系架构的调整不可避免:

 对于一个使用RISC架构作为IT主要架构的企业来说,后台前台数据结构势必是以RISC架构为核心的。如果要转,那么这种体系架构肯定要改。比如数据模型,存储文件系统……

接下来他举出了淘宝的例子:

淘宝商品库核心数据库系统去O过程中,很关键一个里程碑就是把切分库的方式从卖家ID变成商品ID,从而根本解决了从RISC到分布的X86系统时IO分布不均的问题。要是不作这一改变,估计那次去O尝试也不会有好的结果。

他认为其实这两种方法没有绝对的好坏:

这个没有谁好谁坏的问题,两套体系两种思路罢了。你决定了换体系就要以新体系的套路重新评估业务,设计架构,千万不能想着偷懒把老的一套以某种方式过渡或者变通过去,那样的结果肯定是失败的。

他又举出一个案例:某家企业

一直想在X86系统中找“把若干台机器放在一起当一台机器用”的方案,而事实就是这种方案几乎没有,即使有也不可能比RISC好。

非仙居认为这不可能:

因为X86系统就不是按这个思路设计的。X86系统就是要把一件事情拆开在多台机器上跑;或者让一堆机器聚在一起,智能自动地处理一大堆乱七八糟的不同任务。

他指出:很多人讨论的稳定性标准达到几个9这个问题也不现实。其原因在于:

RISC的设计理念是为了 0.1% 的极端情况投入整个成本的60%甚至更多;而X86系统架构的设计理念就是要把100%的成本花在99%会出现的业务场景上,而先不去考虑那些极端场景。 所以要求X86硬件系统达到RISC这样的不当机水准是不现实的,设计理念就不一样。你从RISC迁移到X86,就是要做好准备硬件的稳定标准会从3个9 下降2个9,但因为有软件上层架构的保证,你的应用其实也不会中断。所以要从RISC迁移,你就要把这套旧观念抛开!

关于架构重新设计的好处,非仙居认为:

随着企业信息数据量的越来越多样化和复杂,开放的X86架构可以给你带来更大的业务伸缩性和自由度。但这样子的变革完全需要投入的人力物力也是相当大的,短期看是绝对不会省钱的。干不干得完,全取决于企业的战略和CIO们的胆识。

要诀3:看准方向多投入!

非仙居提出一个很具争议性的观点:

一切只为了省钱而进行的RISC迁移项目最终都会以失败告终!

他从硬件、软件和人力三方面分析了成本。

硬件方面:

别以为RISC系统真的那么贵,没有一个客户买IBM的P系列机器不是打狠折的。而且相对于X86系统,在现有业务环境下,完成同样事情需要的P系 列机器数量肯定要远少于X86服务器数量。所以光算硬件,X86是要比P系列机器便宜些,但其实也没便宜多少,绝对不到数量级上的差异。

软件上:

先说虚拟化,PowerVM是免费而VMWare的收费我就不提了。即使硬件成本上节省了不少但别忘了你还要把应用从PowerVM为基础的AIX迁移到VMWare为基础的Linux上。

而这又涉及到人力的投入:

这方面你要花的人力投入何止RISC系统上的几倍。别的应用更是。

……

从RISC到X86完全是体系架构上的从头再来,所以即使你用的软件硬件是省钱了,但这种体系架构上的重起炉灶势必使你要投入更多的人力物力去研发新体系完善新架构,并且这不是一段时间内的行为。

为了使X86系统完全融入业务环境,注定了他们必须是一支能够长期在第一线优化调整架构的高投入技术团队。要养这么一支团队,企业要付出的各方面待遇薪水福利基本不会少于购买成熟RISC架构软件及其每年相应的服务升级费用,甚至会更多。

在大方向上,非仙居认为一定要把优先级这样的战略问题想好,而且

在一定的预算内,系统的功能和性能如何平衡是很关键的一点。

RISC系统功能完善,可能某些地方性能略差;X86系统某些方面性能领先,但可能一些功能模块诸如冗余容错略逊。所以如果想要通过X86去改头换 面,不妨可以考虑一开始先在某些关键应用的性能方面追求提升,然后系统建设好后再逐步完善其它功能。当然也可以先尽量完善功能模块,再逐步选择提升性能。

总之一开始就要根据实际明确好自己的道路和方向,然后沿着这个方向,大胆投入,不然走了一半才意识到这些就悔之晚矣了。

RISC迁移的两点好处

非仙居总结了RISC迁移的两点好处:

好处1:获取更大的业务自由度。

未来信息化的发展,可能需要的不是一个可以稳定运行20年的系统,而是一堆短时间内可以支撑海量用户或者某种高峰应用的小系统。而一段时间过后,这 些小系统是否存在人们基本不再关心。所以旧有RISC系统的局限在这种业务趋势下就会变得捉襟见肘。相反更灵活,伸缩性更大的X86体系架构就变得更适合 企业业务的发展需求。

好处2:增强自身的话语权。 

现在X86系统的周边产业链也就是所谓的Eco-System要比RISC系统完善强大太多了。作为一个CIO,如果所有系统都绑在RISC上,那 么日后势必只能越来越多的依靠IBM,Oracle这几家寡头。系统发展,升级,所有的命脉其实都捏在他们手上。别说讨价还价了,想单独要些定制的东西都 会越来越难。

而X86系统就不说了,硬件就不说了,软件方案也是精彩纷呈选择多样且兼容性移植方案都齐备。想自己开发点啥开源社区或者开源定制服务公司也都在那里等着你。你大可以放手选择,招投标时生杀大权完全掌握在你自己手里。

文章最后,非仙居总结:

天下事其实都是这样,有舍才有得。你抛弃了旧有的稳定可靠的框架,横下一条心,投入大量的人力物力走上了一条新的道路,练一套全新的武功招数,获得 了更大的业务自由和伸缩空间,同时也使自身和厂商博弈时占据了更有利的位置。这个就是我认为的RISC向X86迁移的付出和回报。

……

一旦要走这条路就要彻底的走,走一半或者走走停停都是浪费人力财力的无谓之举。

微博热议

他的这篇博文引发微博上的讨论。

jametong提出了自己的观点:

  1. Risc系统与数据模型的关系不是必须调整的。
  2. 不是每个公司都可以承受去Risc系统带来的阵痛的(不要搞出下一个Digg的改造出来)。
  3. 不是每个公司都可以投入那么大量的人力物力来做改造,改造的效果也未必是省钱。
  4. 做这件事情的目标不明确。

脚趾008对其的评论是:

严重同意第一点,用x86也能用O。从risc转x86还有一种场景可能@非仙居没提,大型的SI/ISV,为了降低方案整体成本,避免受制于I,同时他们技术雄厚,能承受两种架构并存。这类公司,以通信行业为代表,按规模来建议平台,但其仍为传统架构。

淘宝网高级数据库专家宁海元的微博帐号是NinGoo,他指出:

以现在pc+ssd的性能,从小型机迁移出来没那么大的风险和人力投入了,只是需要在数据库和应用层面做好容灾和高可用方案。至于去不去O在这里不 是关键点。小型机这种昂贵的封闭系统,其实风险很高,一旦宕机十几个小时修不好常有的事,而pc的价格完全可以多买几台直接替换。

高峡之数据时代说:

  1. 最重要的驱动力就是降低成本,这不可耻。当年GOOGLE没有钱,买了很多PC SERVER集群,来提高高可用性,结果催生了云计算;
  2. 以降低成本为中心,才能折中架构重构,高可用性和性能;
  3. GOOGLE每年的数据中心成本从64亿美金,降到15亿美金,从而打造出极佳的盈利模式;
  4. 降低成本本身就是商业模式的一部分 

南七的木木指出:

x86化的所有优势恰恰与x86硬件无关,而是分布式软件架构带来的对业务扩展性灵活性的支撑。

脚趾008对这个观点不是很赞同:

当前的X86在稳定性方面和risc的差距已经不象早年那么大了,更别说采用了小机架构来设计的x86服务器,性能方面更是几乎相当。

在评论中, 非仙居老卢在路上从硬件的可靠性问题开始,讨论到了大型企业的考核与绩效:

老卢在路上:第一次听说RISC是三个9设计的,X86是两个9。有什么具体的例子来佐证这个嘛?

非仙居:只是打个比方罢了。就是想说明不论从硬件还是软件,X86的系统对于RAS,归档,快照等等需求处理的思路确实和传统RISC不一样,没有可比性。

老卢:replication这些都是软件特性,不知道和CPU的关系具体体现在什么地方?

非仙居:和cpu无关的。但很多企业考核指标就是硬件的不死机,这个是RISC时代的标志,不适合拿来衡量x86的硬件可靠性。x86系统看单机是没有意义的。所以我说你光看硬件的话,会可能从3个9变成2个9,但整体系统依然是高可用的。

老卢:所以还是软件和系统的可靠性要求不一样,和是否是RISC或者是X86没啥关系..

非仙居:是的,但问题是现在大多数大型企业考核系统稳定性的标志还是RISC的思路,对X86没有意义。但这个指标却和部门绩效工资息息相关。这个不转变,领导的思路就不可能改变。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

是小型机和兼容PC的区别 by Kraft Bai

跟risc和x86没什么关系吧。文章基本赞同,只是老用cpu来代表有点混。

Re: 是小型机和兼容PC的区别 by Xu Liang

Power架构的IBM CPU主频高呀,3年前就有4G了,很适合CPU密集型的老应用免费提升性能。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

2 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT