云计算将引领计算机领域第三次技术变革
2010-06-09 德赛网
云计算,可以认为是一种大规模的分布式计算技术,由多个服务器组成庞大的服务集群,通过网络向用户提供应用服务。云计算集群可以在数秒之内,处理数以千万甚至亿计的信息。云计算采用的是多服务器的分布式结构,不但使得服务的计算能力可以灵活扩展,而且在数据备份、数据控制(比如:版本控制,协同共享)等方面也有很大的优势。一些公共云计算服务可以达到上万台节点,甚至几十万台,上百万台服务器同时向用户提供服务。
云计算是计算机领域的第三次大的技术变革。第一次变革是上世纪80-90年代个人计算机的普及,这次变革将计算机的应用从研究和专业领域带入到广大的企业和个人应用领域,大大帮助企业和个人大幅度提高了生产效率,产生了一批伟大的公司,比如:微软,Oracal,SAP,惠普,戴尔,联想等等。第二次变革是最近10年互联网的普及,这次变革将数以亿万计的信息孤岛汇集成国际互联网,大幅度扩展了人类知识共享和交流沟通。产生了一批伟大的互联网公司,比如:Google,Amazon,百度,阿里巴巴等等。云计算在前两次变革的基础上,将更进一步解放社会生产力,通过大规模的集群服务,全世界的计算机用户将更好地共享计算机的计算资源、存储资源等等,甚至改变信息化的运营模式并减少能源消耗。从当前的形式来看,引导这次变革的主要是Google,ZOHO,Salesforce等等公司。
云计算会在下面三个方面产生巨大的影响:
首先,未来90%的桌面应用都会逐渐地被云计算服务所代替。
其次,软件的销售模式会发生变化,用户将更多地按照自己的需要租用云计算服务。
最后,传统的信息系统开发商会逐渐转变开发模式,更多地转向云计算所提供的开发平台。
提供云计算服务可以分为三个层次,IAAS,PASS,SaaS。大多数的云计算服务会以PASS和SaaS的形式提供给用户。要提供PASS和SaaS服务的关键是要建立一套高效的集群操作系统,集群操作系统需要提供包括数据共享,分布式处理、故障检测、故障隔离、容错等等功能。
集群操作系统中很重要的部分是分布式文件系统。分布式文件系统会按照自己所提供服务的需要,创建自己的文件单元。如果应用中使用大文件比较多,云计算分布式文件系统就会采用大文件系统,如果应用中使用小文件比较多,云计算分布式文件系统就会采用小文件系统,目的是提高文件存取的速度和利用的效率。
云计算服务的架构大致可以分成3-4层,最底层是物理服务器,其次是无状态的中间应用层。中间层不是被静态地连接到应用服务器,而是通过语言无关的协议,连接到网络中被应用层调用。中间层还可以细分为查询处理层和缓存层。然后就是应用层,应用层调用中间层和物理服务器交换数据,为用户提供服务。
应用程序首先会定义中间层逻辑的模式,逻辑模式对所有应用是统一的。中间层会将应用程序的查询从逻辑模式翻译成存储所用的物理逻辑,物理存储逻辑可以是一些对象存储逻辑。应用程序不关心这些存储逻辑,由中间层负责和存储逻辑交互。中间层会为应用提供缓存,甚至会提供数据的版本信息,逻辑模式和物理模式的映射表,物理查询的优化,应用程序的用户认证等等。
在中间层,云计算服务会创建一套自己的通信协议,在数量众多的服务器之间通信和传输数据。这套中间通信系统向上层应用提供多种接口了,上层应用程序可以按照自己的需要选择对应的接口,上层应用可以是Java语言写的应用,也可以是C语言写的应用,也可以是PHP或者Python写的应用,它们只需调用云计算中间层的接口就可以了。我们可以简单用图一简单描述一下这种架构:
<图一>
当前,云计算的相关应用已经比较多见,比如搜索引擎,网络邮箱,在线办公系统等等。未来,随着手机和平板电脑的的迅速发展,会发展出大批量的云计算服务。
云计算应用具有下面三大突出特点:
第一,高可靠性。云计算的文件系统使用了数据多副本的容错机制、计算节点同构可互换等等,这些措施保障了服务高可靠性。
第二,高可扩展性。云计算的规模可以动态伸缩,服务提供商根据用户增长的规模,适时增加服务器节点来提高云计算服务的计算能力,这对服务提供商和用户来说是一种双赢,用户不必为服务商的过量投资承担成本,服务商也不比担心服务能力不足而损失客户。
第三,按需服务。由于云计算的计算和服务能力对于所有用户来说是一个巨大的共享池,用户可以按照自己的需要选择不同的模块,这样就不会占用不必要的资源,所以用户只对自己选择的模块所占的资源付费。当不需要相关服务的时候,用户可以方便地将占用的资源归还到资源池。
云计算有上述众多的好处,但是也有一些局限性,比如数据安全和个人隐私方面。由于不同国家在保护个人隐私方面的法律法规不尽相同,当前,云计算服务商对于用户的数据的保护是一个比较大的挑战。怎么避免第三方从服务商那里获取用户的数据需要法律更进一步的完善和保护。