从“网络就是计算机”到“网格计算”,从“分布式计算”到“互联网计算”,长期以来,与“云计算”相类似的理念被学术界和不同的企业各自表述——虽然各个理念的内涵有些细微的差别,但大多基于充分利用网络化计算与存储资源、达成高效率低成本计算目标的考量,希望能更好地整合互联网和不同设备上的信息和应用,把所有的计算、存储资源连结在一起,实现最大范围的协作与资源分享。
云计算理论和尝试已经有10多年——近十年来,从.NET架构,到“按需计算”(On-demand)、“效能计算(UtilITy Computing)”、“软件即服务”(Software as a service)、“平台即服务”(Platform as a service)等新理念、新模式,其实都可看作企业对“云计算”的各异解读或“云计算”发展的不同阶段。
亚马逊(Amazon)所推出的S3(Simple Storage Service)和EC2(Elastic Compute Cloud)标志着“云计算”发展的新阶段:基础架构的网络服务作为提供给客户的新“商品化”的资源,而今,EC2已成为亚马逊“增长最快的业务”。 IBM则于2007年推出了“蓝云”(Blue Cloud)计算平台,期望帮助客户进行云计算环境的搭建。此外,Google一直在积极推广其App Engine;而Salesforce.com推出的CRM平台作为服务也产生了很大的影响。
2008年,经过多年的积累和持续的探索,微软公司亦正式发布了完整的云计算平台——Windows Azure(蓝天),并投入巨资在全球范围建造数据中心。这些现象都表明,经过多年的积淀和持续的探索,云计算终于开始成为一种全球IT产业共同应和的、主流的声音。
一、“云计算”何以渐成主流
云计算能够成为IT业创新实践的一大主流要归功于以下三个方面的因素。
第一是计算、存储、通讯技术的快速发展:CPU、GPU的多核进化及虚拟化技术的日趋完善,为信息系统的高性能和低功耗找到了重要的突破点;更大的互联网带宽则使得更多的计算资源和软件可以以服务的形式推送到客户端;海量存储、数据挖掘、人工智能等技术的不断发展也令数据更加结构化、更具语义关联,从而实现了从“数据”到“信息”再到“知识”的积淀和进化,并逐渐发展为互联网服务的“大脑”(Intelligence Inside)。正因如此,原本看似不可企及的梦想因为技术的成熟而成真。
第二,用户的需求也一直在嬗变中。Web 2.0缔造了挥洒创意、彰显个性的新时代,越来越多的用户愿意将自己创造的信息(如博客)和资源(如图片和视频)上传到“云”中,与相识或不相识的朋友们分享,并在任何时间、任何地点,采用PC,手机及其他设备来管理“云”上的数据和应用。再者,无论对个人或企业用户而言,根据现实需要去获取时使用各种虚拟化的计算资源,无疑更经济也更简单。这便为有能力提供相应服务的云计算服务商制造了机遇。
第三,新的商业模式的涌现,让众多的个人和企业用户看到了不同于以往的趋势和可能。多年前我曾指出,“服务化”将成为软件产业的一个趋势,现在看来,这个趋势无疑更加明显。软件不再只是封装(或预装)好的“商品”,还可以通过在线服务、随需租用或附带广告的免费版本等多种多样的形式来获取新的软件+服务(S+S)。再如,很多新的功能包括视频点播、信息搜索、在线地图,这些都是传统软件不易实现的功能,所以必须依赖“云层”之上的、规模庞大的计算和数据资源。
尽管已渐成主流,但直到今天,“云计算”一个概念、多种表述的状况并没有多大改观。坦率地说,每个企业和机构对“云计算”及其前景的解析都或多或少地结合了企业自身的业务方向和现实利益。在此,我想谈谈我的一些想法——其中部分观点是建立在与微软亚洲研究院马维英博士及其他专家讨论的基础上。
二、解读“云计算”的功能特性
看似高深的“云计算”理解起来并不难,其实就是把所有的计算应用和信息资源都用互联网连接起来,供个人和企业用户随时访问、分享,管理和使用——相关的应用和资源可以通过全球任何一个服务器和数据中心来获取。
真正的“云计算”平台应该能实现以下三方面的功能。
1:提供“资源”——包括计算、存储及网络资源,这就需要服务提供者架设出规模巨大的全球化的数据库及存储中心,能够实现“海量”的存储、出色的安全性和高度的隐私性和可靠性——此外,它还应是高效的、低价的、节省能源的。
2:提供动态的数据服务。数据包括原始数据、半结构化数据和经过处理的结构化数据。我们正在进入一个以数据为王的时代——一个好的云计算架构一定要有提供大规模数据存储、分享、管理、挖掘、搜索、分析和服务的智能。
3:提供云计算平台——包括软件开发API、环境和工具。只有这样,云计算才能真正形成一个有生命力、有黏性、可持续发展的“生态系统”。我个人认为,这也是云计算带来最大的价值。
云计算不应该也不可能一蹴而就,希望用户一夜之间就从“端”全面转向“云”是很天真的想法——用户理应自主决定最符合其利益的资源部署方式,从而在“云”和“端”之间实现难能可贵的平衡。只有通过云+端,云端互动才能最大程度利用云的功能实现最佳的用户体验。