阿里巴巴取代IBM甲骨文易安信 | AI生成和翻译
阿里巴巴的”去IOE”行动
阿里巴巴于2008-2009年左右启动的”去IOE”行动,是一项旨在消除对IBM、Oracle和EMC(IOE缩写)专有供应商技术栈依赖的战略举措。该行动通过转向开源和自研技术,达到降低成本、提升可扩展性和促进创新的目标。这对阿里巴巴电商业务的发展至关重要,因为IOE系统不仅成本高昂,且难以支撑海量业务规模。
被替代的IOE技术栈
“IOE”指的是由这三家厂商主导的高度集成的高端企业级技术栈。以下是阿里巴巴逐步淘汰的核心组件:
- IBM(硬件与中间件):
- 主要替代组件:
- IBM大型机(如zSeries或System z)及Power Systems等高端服务器
- IBM的AIX操作系统(专有Unix变体)
- IBM WebSphere(Java应用的应用程序服务器/中间件)
- 在某些场景下的IBM DB2数据库(但Oracle是数据库层的主要替代目标)
- 替代原因:IBM硬件虽稳定可靠,但成本高昂、绑定性强,且不适合云规模的横向扩展。阿里巴巴将其替换为成本更低的商用x86硬件(如运行Linux的Intel/AMD服务器)
- 主要替代组件:
- Oracle(数据库):
- 主要替代组件:
- Oracle数据库(企业级关系型数据库,如用于高可用的Oracle 10g/11g RAC)
- Oracle中间件如Oracle Fusion Middleware或WebLogic Server
- 替代原因:授权费用昂贵(按CPU核心和用户数计费),且无法理想支撑阿里巴巴的海量读写负载(如淘宝的交易峰值)。Oracle的专有属性也限制了定制化空间
- 主要替代组件:
- EMC(存储):
- 主要替代组件:
- EMC Symmetrix或Clariion存储阵列(SAN/NAS企业级存储系统)
- 替代原因:昂贵的专有存储系统存在供应商锁定问题,难以线性扩展至电商所需的PB级数据规模
- 主要替代组件:
整体IOE技术栈构成一个”封闭”生态:IBM服务器运行AIX系统,上层部署Oracle数据库,数据存储在EMC阵列中,并通过IBM中间件进行整合。这套架构在传统企业中很常见,但却成为阿里巴巴发展的瓶颈。
替代IOE的技术方案
阿里巴巴基于开源基础、商用硬件和自研技术重建了整个技术体系。核心替代方案包括:
- 硬件/OS层(替代IBM):
- 商用x86服务器(如戴尔、惠普或定制服务器)
- Linux发行版(初期使用CentOS/RHEL,后期采用阿里云自研的ALINUX)
- 自研集群管理编排工具
- 数据库层(替代Oracle):
- 开源起步:MySQL(阿里巴巴深度贡献,现已形成基于MySQL 5.5/5.6的AliSQL分支,支持高并发场景)
- 自研体系:
- OceanBase:阿里巴巴研发的分布式关系数据库(NewSQL),具备金融级可靠性(支持海量规模的ACID事务),现已开源并应用于蚂蚁集团支付宝
- Tair/DRDS:内存缓存(类Redis)及分布式SQL分片方案,支持水平扩展
- 新方案在无需Oracle授权费用的前提下,实现了日均千亿级查询处理能力
- 存储层(替代EMC):
- 基于Ceph或HDFS的分布式存储
- 阿里自研的PolarFS及基于商用硬盘的定制块存储/对象存储
- 后期演进为阿里云OSS(对象存储服务)和EBS(弹性块存储)
- 中间件/应用层:
- HSF(高速服务框架)实现微服务架构(替代WebSphere)
- Apache Dubbo用于RPC/服务发现
- SOFA(可扩展开放框架架构)等自研工具
影响与遗产
- 成本优化:初期硬件/数据库成本降低70-80%
- 扩展能力:支撑双11购物节峰值处理(如每秒50万+订单)
- 技术创新:催生阿里云业务(现为全球最大云服务商之一)并推动开源贡献(如OceanBase已被全球金融机构采用)
- 时间线:于2012-2015年完成全面转型,”去IOE”成为中国科技企业的标杆实践
如需了解具体细节(如迁移挑战或现有技术栈),欢迎进一步探讨!信息来源:阿里巴巴官方博客、马云演讲及当时的技术报告。