以数据为中心的云计算——阿里云OS浅谈

时下,云计算是一个时尚的名词,但究竟云计算解决了什么问题?云计算的技术挑战又在哪里?云计算和移动互联网又是怎样的关系?本文将阐述阿里云的观点,并介绍阿里云在云计算上的努力。

云计算的三个实质问题

云计算可以被解释为虚拟主机的租赁服务,也可以被解释为企业软件的 SaaS 化,又或者是一个“云机箱”之上跑许多个虚拟桌面。在阿里云看来,云计算要解决三个实质问题。

第一是大规模。这里提到的大规模不仅是超过单台 PC 服务器的能力,更指的是能够支撑互联网级别的数据和应用,例如个人邮箱、搜索等。

第二是低成本。低成本的一个标志在于用系统软件来解决廉价硬件在复杂条件下不可靠的问题。

第三是服务运营。这里所指的服务运营是能够通过无差别的存储计算能力来提供公共的基础服务。

当各式各样的应用可以共同运行在一个统一平台之上,才能达到真正的大规模,而由此得到的规模效益才能够获得低成本,于是这三个本质的问题是云计算的有机整体。

传统的软件以功能为主体,而云计算则彻底推动了“数据为王”。数据将成为一家企业乃至是一个国家极其重要的战略资源。而数据的搜集、存储、分享、处理和应用是需要大量的计算资源的,从这个意义上说,云计算可以称为“以数据为中心的分布式大规模计算”。而一个企业乃至一个国家瞬间能够调用的计算资源则成为了能否利用和发挥好数据这个战略资源的核心竞争力。提供公共计算服务的云计算平台将大大促进企业之间、社会各行业间的数据收集、分享和实时处理,在这基础之上必将孕育出大量的数据运营的新商业模式,数据也将最终成为一切商业行为的决策基础,从而大大提高社会的整体效率,促进人类从大工业化时代走向信息化时代。

云 OS 架构

搭建云计算平台是一项有较高技术门槛的大工程。云 OS 在这个大工程中起着至关重要的工作。云 OS 的本质就是数据中心上的操作系统,它需要把成千上万台通用 PC 服务器变成一台超级计算机。

图 1 阿里云 OS 架构

如图 1 所示,阿里云 OS 运行在成千上万台服务器的 Linux 之上,飞天大规模计算系统相当于 Windows 中的内核,负责管理集群系统资源、控制分布式程序运行、隐藏下层故障恢复和数据冗余等细节、有效地提供弹性计算和负载均衡的服务;开放存储服务 (OSS)、开放结构化数据服务(OTS)和开放数据处理服务(ODPS)类似于 Windows API,提供了方便的进行大规模数据的存储、查询和处理服务;在这之上的 Cloud Engine 为第三方云应用提供了弹性、低成本的运行环境,帮助开发者简化云应用的构建和部署;在互联网基础应用的层面,如同 Windows 自带记事本和画笔,阿里云 OS 自带了搜索、邮箱和地图的服务。

这样的体系结构可以有效并广泛地支持各种互联网的应用,并且作为一个开放系统,为第三方开发者提供简易的操纵整个数据中心计算资源的能力。在阿里云 OS 中,飞天大规模计算系统是整个系统的核心技术能力,承载了从 PC 服务器到“数据中心”这台超级计算机的质变。

云计算与移动互联网

随着 3G 时代的到来,移动互联网的兴起将带动互联网进入新一轮的高速发展。移动设备将成为人们更方便、更广泛地接入互联网的终端。移动的特性同时也带来了对数据收集、分享、处理等更高规模上和实时性上的要求。因此,虽然云计算不是为移动互联网而诞生的,却很可能在移动互联网开花结果。为了更好地配合和利用数据中心中云计算平台提供的计算能力,阿里云 OS 同时管理了移动终端上的计算资源(如图 2 所示)。其中,为了帮助开发者便捷地将互联网服务接入移动终端,使得云应用拥有和本地应用一样流畅的用户体验,阿里云 OS 为开发者提供了云端和终端的资源和服务构建统一的云应用框架。

图 2 阿里云 OS 对移动终端计算资源的管理

阿里云通过构建阿里云 OS 来实现以数据为中心的云计算,解决了大规模、低成本、可服务运营这三个本质的问题。同时,阿里云 OS 在移动终端的努力,使用户可以用更便捷的方式来获取互联网服务。云 OS 是一个费时费力的大工程,但同时也是云计算绕不过的技术门槛。阿里云将直面平台搭建这样的正面战场,使得云计算不再是概念,而是实实在在的工作。

作者林晨曦,2008年 11 月加入阿里集团研发院,目前是阿里云计算平台部门的资深专家。从 2008 年到目前,一直从事阿里云大规模分布式系统(飞天)的架构和开发工作。在加入阿里云之前,林晨曦曾在微软亚洲研究院从事分布式系统、机器学习等研究工作。