DataCastle 2014-01-03
2013中国软件开发者大会(以下简称SDCC)于8月30-31日在北京新云南皇冠假日酒店举办。作为CSDN和《程序员》杂志倾力打造、千人规模以上的顶级技术盛会,今年SDCC 2013以“软件定义未来”为主题,来自于国内外一线的技术精英,就大数据分析与BI、架构实践、研发管理、IT基础设施与运维、产品与设计、开放平台等专题和参会者进行了深入的分享和探讨。此外,32小时编程马拉松、CTO论道论坛等量身定制的特色环节也受到了参会者的强烈关注。
来自阿里技术保障部DBA负责人周宝方分享了《阿里“去IOE”战略》为主题的精彩演讲。他跟大家分享了阿里“去IOE”战略历程、核心技术与心得体会。
阿里技术保障部DBA负责人周宝方(后羿)
IOE三个单词分别表示:IBM、Oracle、EMC,更确切地说是IBM小型机、Oracle数据库与EMC存储设备的组合。他表示,斯诺登事件让更多企业考虑“去IOE”的必要性,但是“去IOE”拥有很高的技术门槛,较大的技术风险,水很深。而集中式的严重制约是“去IOE”的核心原因,而IOE本身限制了很多开发者技术的发挥和许多企业的长远发展。同时,他还认为,“去IOE”技术难以复制,对接该技术的云计算平台更合适,需要信念,才能走下去。
周宝方向大家介绍了阿里的“去IOE”战略,包括2010——2013年预算指导原则的演进、阿里“去IOE”历程中所用到的技术架构及心得体会。并且还在大会上对一些坊间传言进行了澄清,比如阿里是使用MySQL去IOE的,其实除了MySQL,还有OceanBase、RDS。
2010~2013年预算指导原则的演进
做预算一个很重要的指导原则是阿里技术的不断发展,每年阿里做预算不单单是盘点钱的事情,而是梳理未来技术一年的规划。在这个过程中,阿里逐步确定了以云计算的思路来逐步展开应用。下面是周宝方对这四年“去IOE”整个预算过程的总结:
“去IOE”历程
阿里”去IOE“前架构
首先对业务进行垂直拆分,就是按照功能拆分,misc/bmw/shoop相继拆分;然后再进行水平拆分,就是大家所说的分库分表。后来阿里又逐步放弃使用RAC来处理大数据,而是以云的思路来处理大数据。
至于为何一定要“去IOE”呢?他在大会上也跟大家进行了具体的分享,技术上主要包括以下几点:
除掉以上核心因素,他还跟大家分享了当时的内外部环境、去IOE核心技术、需要克服的技术难点及“去IOE”里程碑。
(1)内外部环境
内部环境,主要源于2009年11月份的预算报告初稿,当时决定阿里以后不再购买小型机。外部环境主要包括:PC服务器处理能力增强、以及Flash技术的出现。
阿里”去IOE“后整体架构
(2)去IOE核心技术:
(3)“去IOE”需要克服的技术难点:
对以上技术详细进行拆分,还可分为:
在克服掉以上这些困难后,
(4)“去IOE”里程碑
时间 | 关键事件 |
2010年1月 | 三淘核心系统”去IOE“启动 |
2010年7月 | 完成商品库"去I“ |
2011年7月 | 完成商品库"去OE" |
2011年9月 | 完成交易库"去IOE“ |
2012年12月 | 完成三淘"去IOE“ |
2012年6月 | B2B/阿里金融启动 |
2013年4月26日 | CBU/ICBU完成"去I" |
2013年5月21日 | 支付宝完成"去IE“ |
2013年6月4日 | 阿里最大的现金流结算系统"去O" |
2010年1月份启动,大概2011年7月份完成商品库的“去IOE”,这也为后期交易的“去IOE”奠定了坚实的技术基础,这期间主要经历了三个阶段:
心得体会
在完成”去IOE“后,周宝方感触很深,他表示,”去IOE“首先赋予了阿里非常灵活的技术架构,支撑业务的快速发展,比如双十一,阿里可以很淡定地做业务扩展;其次是阿里掌握了技术自主可控操作;另外还包括基础工程技术和人才的积累、技术的沉淀、成本、安全性的提升等等。
最后他还跟我们分享了一些心得体会: