电信企业IT互联网化目标架构及演进策略研究
2014-02-28乔宏明姚文胜
李 嫚,乔宏明,姚文胜
(中国电信股份有限公司广东研究院 广州510630)
1 引言
互联网改变了游戏规则,终端的日益强大改变了用户行为,运营商在价值链中逐渐被管道化,在应用领域趋于边缘化。运营商之间的竞争已从网络规模、业务种类的竞争,延伸至服务能力、品牌的竞争,运营商是否能有效地提升服务水平、运营效率和管理能力,已成为竞争的关键。
运营商为了突破困境,适时提出了“去电信化”的发展思路,实现业务模式从传统的语音经营转向流量经营,实现从单业务到全业务、从自营到批发和代理、从单边商业模式到多边商业模式的转型。
然而传统IT运营模式已难以应对“去电信化”、“流量经营”等新要求的挑战,为支撑传统业务模式而建设的IT支撑系统以及IT运营体系势必要做出改变。另一方面,随着互联网行业的爆炸式发展,传统IT架构存在的对大型IT厂商技术依赖过多和成本过高等问题越来越突出,同时大型企业自身技术逐渐成熟,尤其是技术团队自主研发能力不断增强,因此产生了如何在未来新系统中实现技术可控与成本可控的“去IOE”思想。
腾讯、淘宝等企业凭借优秀的互联网基因能很好地应对类似挑战,取得良好业绩。电信企业应思考“去电信化”趋势,认真向优秀互联网企业学习,适时推进IT体系的互联网化,建立互联网运营模式。通过建立以客户为导向、随需应变、开放、交互、智能的统一IT架构,采用小、快、灵的运营式开发模式,构建现代化的、适应互联网时代发展模式的新型企业IT系统。
2 互联网企业IT发展历程
同许多传统企业一样,互联网企业IT也面临着巨大的挑战。伴随着互联网技术和业务的发展,互联网企业的竞争日益加剧,大量新的互联网企业进入新兴的互联网领域,用户量的增长对互联网IT的冲击不断增强。为了提供更好的用户体验,互联网企业的技术架构经历了不断变革的过程,逐步实现极致体验的IT系统。互联网公司的IT架构,特别是大型互联网公司的技术架构,值得传统电信企业学习和借鉴。通过研究淘宝、腾讯等公司的技术架构变革历程,可以为电信IT技术架构互联网化提供重要参考和依据。
为应对不同时期业务发展和企业战略的要求,在过去10年中,淘宝对系统架构进行了3次大的调整和演变:2003年,整 个 网站采用LAMP(Linux+Apahce+MySQL+PHP)架构,应用系统分为前台、后台两大部分,部署在PC服务器上。数据库使用MySQL,采用读写分离的方式。但由于当时MySQL版本读操作会锁表,主从复制时会对主数据库产生大量读操作,使得主库性能急剧下降,不能适应业务量增长的需要。2004-2008年,采用IOE架构,把MySQL迁移到Oracle,PC服务器升级到IBM小型机,低端存储升级到高端存储,在此期间,对数据库进行分库分表,冷热分离,在应用程序和数据库之间通过增加缓存层、CDN等措施来提高数据库读写性能,但随着业务的急速发展,系统只能进行垂直向上扩展(scale-up),存储和性能仍然出现瓶颈。2009年后,尝试采用“去IOE”架构,核心业务从Oracle逐步迁移到分布式MySQL集群,大量采用PC服务器和本地硬盘存储并通过自主研发分布式服务层和中间件,搭建分布式技术架构,并成功应对了2012年和2013年的“双十一”促销。
腾讯公司的TBOSS相当于运营商的MBOSS,经历了10年的发展,从“烟囱型”架构逐步进化为面向服务的架构(SOA)。出于成本控制的考虑,TBOSS从起步开始就摒弃了IOE架构,坚持以PC集群承载其核心业务,约1 200个节点的PC集群支撑百亿级账户、10亿级日交易、毫秒级响应、一分不差准银行级账务。TBOSS同样经历了3个阶段的演变:2000-2007年,支撑中国移动及中国电信增值业务,采用关系型数据库,各个系统以“烟囱式”构建,技术上以C++、Net、Spring等为基础;2008-2010年,面对全互联网产品的支撑,改成了面向服务的系统架构,采用的技术基础是分布式缓存、消息队列、数据拆分、NoSQL数据库、Hadoop等;2011年至今,面向海外及全互联网产品的支撑,采用了云化架构,通过SOA向外提供服务,使系统更加具有柔性。
通过淘宝和腾讯的案例不难看出:是业务的发展推动了技术架构的不断变革,架构设计原则需根据业务而调整,“去IOE”是架构调整过程的副产品。淘宝在保有IOE架构情况下,为解决业务问题,先纵向拆分、后读写分离,最后才实现横向拆分扩展。为保证扩展能力,将数据一致性从高一致性弱化为最终数据一致性原则。这些都是业务和IT双向驱动的结果。
同时,体系架构的变革需要强大的技术储备,采用开源需重新面对很多商业技术已解决的难题。体系架构的变革对开发和运维方面都将带入更多的全局复杂性,例如资源管理、作业分割调度、数据分配、消息机制、一致性保障、异常处理等,在操作系统层、数据库产品层已经由商用技术解决的问题,会由应用开发者重新面对。这些都是阿里集团不得不打造规模庞大的基础核心技术研发和应用开发团队的根本原因。
3 电信企业与互联网企业IT差异
传统企业可以借鉴互联网技术成果,却不一定能完全效法其架构模式和发展路线。本文从用户发展规模、业务特征、IT特征等多个维度对电信企业和互联网企业进行全方位对比,从而探索与电信企业特征相适配的IT架构。
从用户及业务量发展趋势来看,通常互联网企业用户和交易量会急速增加,对IT的主要挑战是提供最佳产品体验并扛住高增长带来的海量用户、海量访问、海量数据的压力。以淘宝为例,每天有7亿次的页面访问、40亿次的用户访问、400万笔有效交易,为了应对海量和高速增长的压力,淘宝网必须不惜一切代价拆分系统,以其可承受成本实现高速业务规模增长。而电信企业和淘宝网的发展阶段缺少可比性,电信行业基本饱和,用户和收入规模稳步增长,总用户量虽已超过4亿户,但分省部署架构下,大省用户规模也在3 000万~5 000万户,短时间内不可能有飞跃性突破,性能压力相对不大;同时,为提供“电信级”服务,企业对IT的主要要求是保持稳定运营,同时快速支撑复杂多变的业务需求。这种复杂性包括套餐的复杂性、产品使用过程的复杂性等,这些是互联网IT当前无需面对的。
从商业模式和业务特征来看,互联网企业多数采用以“免费服务+广告”为基础的后向收费模式,对前向客户只需提供“尽量好”的服务承诺,企业对数据丢失、服务中断风险敏感度低。而电信行业为国家指定基本通信服务提供者,通常为前向收费模式,需要提供“必须好”的服务承诺,企业对数据丢失、服务中断等风险敏感度高。互联网企业的业务特点相对简单、自助化程度高,基于几个关键环节的极度简化谋求与传统行业的差异化,业务间关联关系少,业务间没有复杂的捆绑。例如淘宝不同店铺、商品、用户、交易、支付间没有复杂关联。而电信需要提供全面化、多样化、高覆盖的电信服务,业务关联关系复杂且多变:跨本地网、跨业务、不同客户之间存在捆绑、交叉优惠。
从IT定位和特征来看,互联网企业IT系统就是业务,基于IT关键技术能力打造差异化核心竞争力,并且一般为技术主导型企业,技术组织自我掌控能力较强,自主开发应用甚至核心基础技术,并承担技术风险。而电信企业靠核心网、业务网的技术领先、规模和质量构成差异化核心竞争力,IT部门通常为技术应用者,一般依赖供应商提供成熟的商用技术产品或技术开发服务。从系统划分来看,互联网企业系统划分较细,因为业务被极度细分、简化,作为一个个产品由独立应用系统支撑,甚至一个功能就作为一个产品独立支撑(例如购物车、收藏夹、搜索、推荐、支付)。而电信企业业务复杂且强调融合支撑,用较少的复杂大系统支持多种业务、多种功能、多个业务流程,导致关键业务系统的业务模块间关联性强,体现在数据库表多、表间关系复杂。从系统的架构模式来看,互联网企业通常采用“业务特点→技术特点→技术架构”的自顶向下的架构设计模式,以体现差异化、精细化。而电信企业通常采用低风险的以“通用架构+标准化产品”为基础的适应“差异化业务需求”的架构模式。从系统的扩展能力要求来看,互联网企业要求大容量的横向扩展能力,兼顾高可用性,以特殊措施减少或补偿数据不一致性问题。而电信企业通常以高数据一致性为前提,兼顾系统高可用性,当前分省模式下业务量没有互联网行业大,高性能集群方案基本可以满足。
4 中国电信IT互联网化目标架构及演进策略
基于电信企业和互联网企业的业务及IT特征的分析,充分借鉴互联网IT的演进变革经验,本文研究提出适合电信企业自身发展特点的IT目标:以支撑集约运营和IT能力互联网化为核心构建全网统一能力,建立与企业集约运营相适应的集团级IT系统和集团IT能力开放平台,实现全网IT能力以“互联网方式”对外开放,实现“设备层云化部署、数据层编码统一、接口层标准统一”,实现全网数据高效共享。
IT技术架构目标从逻辑上包括门户层、应用层、服务层、数据层、基础设施层五大部分,如图1所示。
门户层:实现客户接触互联网化。门户层应充分借鉴互联网/移动互联网门户网站用户界面设计理念和技术,为客户、员工和合作伙伴提供友好、简便、客户感知一致的界面,并为第三方合作者提供IT内部能力访问接口。
应用层:实现应用软件服务化。应用层由管理支撑系统(management support system,MSS)域、业务支撑系统(business support system,BSS)域、运营支撑系统(operation support system,OSS)域、企 业 数 据 应 用 (enterprise data application,EDA)域、专业公司IT体系等几部分组成。应用层继续按照“模块化、松耦合、可配置”的技术思路,采用面向服务的体系架构(SOA),实现各应用程序的不同功能单元通过定义良好的接口和契约提供服务并相互协作,通过服务的重用和组合,快速支撑新业务和新流程。
服务层:实现IT能力互联网化。服务层包括企业服务总线、服务目录和能力开放平台。企业服务总线实现系统间(特别是跨域系统和分级部署系统间)服务调用和数据传输。在应用系统服务能力封装的基础上,通过企业服务总线和统一服务目录,实现相关服务能力跨系统共享,并以可管可控的标准服务的形式向外部第三方(如供应商和合作伙伴)系统开放,形成企业级的IT能力开放平台。
数据层:实现数据模型和编码统一化。数据层重点关注企业数据模型、主数据管理等跨应用域的数据架构相关内容。在规划期内,需统一全网客户、产品、渠道、账户、资源数据模型和主数据编码,实现信息和数据在企业范围内的准确、一致和共享。
基础设施层:实现基础设施云化。基础设施层主要包括主机、服务器、存储等硬件设备、IT专网(DCN)、IT容灾、IT安全、IT服务管理平台、移动应用管理平台等。在规划期内,需通过对计算、存储和网络等资源的虚拟化、标准化和自动化,促进资源共享,提高资源利用率。
借鉴互联网公司的成功经验,技术体系中逐步探索LAMP解决方案在特定业务场景的应用。在综合考虑投资保护、技术成熟度、人员培养、整体成本等因素的前提下,针对逻辑简单、重复处理的查询型业务处理系统,可以逐步从传统架构剥离出来,移植到LAMP架构进行分布式处理。近中期宜采用LAMP和IOE架构相结合的方式,组合出“复杂业务支撑稳定”、“简单业务快速响应、低成本扩展”的架构模式,更适合中国电信的实际需求。中远期在基础条件具备的情况下,可考虑完全“去IOE”模式的探索。具体演进如图2所示。
实施策略上,门户层大力推进客户端的Web化,增加移动客户端的接入;应用层以开源中间件替代商业中间件;服务层逐步形成自主研发分布式服务框架、分布式数据层等分布式系统核心的组件;数据层逐步由MySQL/MariaDB集群、NoSQL和分布式文件系统替代集中式的Oracle RAC;基础设施逐步以PC服务器替代小型机,以开源OS替代商业OS。
5 中国电信IT互联网化配套举措
为推动中国电信IT互联网化工作,保障新架构体系的正常运转,需要进一步落实业务、管理、队伍建设等相关配套措施,具体包括以下4个方面。
·落实运营式开发成本费用,有针对性地增加成本性支出。将IT运营服务性支出纳入日常成本费用,以加快运营性IT开发的审批,快速响应业务需求。同时要建立适合运营迭代式开发的工程建设流程和制度,在现有面向业务需求的年度工程项目管理之外,设立面向基础技术跟进和研发的常态化机制和经费,推动技术能力持续转型。另一方面,逐步降低设备的采购投入,减少小型机采购,提高资源利用效率,并将硬件投资转化为对IT人员、软件等的投入。
·储备自主研发能力,打造核心开发运营团队。整合企业内部IT相关部门、供应商、分公司力量,通过自有人员+外包人员混合的模式,探索市场化的机制建立新兴业务领域的IT团队,逐步实现对一线的快速响应和对数据、服务、架构的有效管控,实现主动适应互联网的运营开发。打造敏捷运营的团队,建立具有互联网开发经验的集团级开发、运营团队,实现日常运营需求的快速、迭代开发。
·简化产品套餐,梳理规则流程,降低业务复杂度。一方面可减少复杂业务捆绑和交叉优惠、缴费支付关系,实现以简单折扣为主的营销策略,降低业务复杂度。另一方面,应清理极少用户套餐、无效套餐,减少业务规则,降低计算量。
·探索IT人员激励方式的转变,推进IT体制机制的变革。首先引入市场化机制解放队伍活力与激情,加速培养自有互联网化IT专才。采取专题竞标等市场化手段,以数据和移动应用为切入点,依托能力开放平台和大数据平台支持内部开发能力提升,激活IT队伍内部潜力。其次,以投入驱动供应商转向开源开放技术路线,增强“去IOE”能力,引导其产品“去IOE”,以逐步壮大LAMP技术团队。
6 结束语
卓越的IT架构一定是适应企业业务发展需要的IT架构。传统电信企业可以借鉴优秀互联网公司的IT建设经验,但一定要结合自身业务发展规律和企业战略部署要求。本文研究提出的混搭架构模式,更适合中国电信目前的实际需求,中远期在基础条件具备的情况下,可考虑完全“去IOE”模式的探索。
1 张勤.开源IT系统及应用架构宝典.北京:人民邮电出版社,2010
2 Rajaraman A,Ullman D J.大数据:互联网大规模数据挖掘与分布式处理.王斌译.北京:人民邮电出版社,2012
3 付强.基于SOA企业IT架构重组解决方案的对比研究.科技信息,2013(8)
4 王德才.开源软件和虚拟化技术在数据中心IT架构中的应用.中国科技信息,2008(11)
5 陶然,阳建州,宋汉征.Apache VCL和VMware vCloud Director在线资源申请云平台的比较.计算机与现代化,2013(12)
6 刘伟.对分布式计算、网格运算和云计算分析.科技信息,2013(9)