计算

云计算是虚拟化(virtualization)、效用计算(utility computing)、IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)等概念混合演进并跃升的结果,也是分布式计算(distribute computing)、网格计算(grid computing)和并行计算(parallel computing)的最新发展,或者说是这些计算科学概念的商业实现。区分相关计算形式间的差异性,将有助于我们对云计算本质的理解和把握。

1、云计算与分布式计算

  分布式计算是指在一个松散或严格约束条件下使用一个硬件或软件系统处理任务,这个系统包含多个处理器单元或存储单元、多个并发的过程、多个程序。一个程序被分成多个部分,同时在通过网络连接起来的计算机上运行。分布式计算类似于并行计算,但并行计算通常用于指一个程序的多个部分同时运行与某台计算机上的多个处理器上。所以,分布式计算通常必须处理异构环境、多样化的网络连接、不可预知的网络或者计算机错误。很显然,云计算属于分布式计算的范畴,是以提供对外服务为导向的分布式计算形式。云计算把应用和系统建立在大规模的廉价服务器集群之上,通过基础设施与上层应用程序的协同构建以达到最大效率利用硬件资源的目的以及通过软件的方法容忍多个节点的错误,达到了分布式计算系统可扩展性和可靠性两个方面的目标。

 

2、云计算与网格计算

  如果单纯根据Ian Foster有关网格的定义“网格将高速互联网、高性能计算机、大型数据库、传感器、远程设备等融为一体,为用户提供更多的资源、功能和服务”,云计算与网格计算之间就能区别了。但从目前一些成熟的云计算实例看,两者又有很大的差异。网格计算强调的是一个由多个机构组成的虚拟组织,多个机构的不同服务器构成一个虚拟组织为用户提供一个强大的计算资源;云计算主要运用虚拟机(虚拟服务器)进行聚合而形成的同质服务。更强调在某个机构提供的资源之间进行处理,而在云计算环境下由于确保了用户运行环境所需的资源,将用户提交的一个处理程序分解成较小的子程序在不同的资源上进行处理就成为可能。在商业模式、作业调度、资源分配方式、是否提供服务及其形式等方面,两者差异还是比较明显的。

 

3、云计算与并行计算

  简单而言,并行计算就是在并行计算机上所做的计算,它与常说的高性能计算(high performance computing)、超级计算(super computing)是同义词,因为任何高兴能计算和超级计算总离不开并行技术。并行计算是在串行计算的基础上演变而来,它努力仿真自然世界中,一个序列中含有众多同时发生的、复杂且相关事件的事物状态。今年来,随着硬件技术和新型应用的不断发展,并行计算也有了若干新的发展,入多核体系结构、云计算、个人高性能计算机等。所以,云计算是并行计算的一种形式,也属于高性能计算、超级计算的形式之一。作为并行计算的罪行发展计算模式,云计算以为这对于服务端的并行计算要求的增强,因为数以万计用户的应用都是通过互联网在云端来实现的,他在带来用户工作方式和商业模式的根本改变的同时,也对大规模并行计算的技术提出了新的要求。

 

4、云计算与效用计算

  效用计算是一种基于计算资源使用量付费的商业模式,用户从计算资源供应商获取和使用计算资源并基于实际使用的资源付费。在效用计算中,计算资源被看做是一种计量服务,就像传统的水、电、煤气等公共设施一样。传统企业数据中心的资源利用率普遍在20%左右,这主要是因为超额部署—购买比平均所需资源更多的硬件以便处理峰值负载。效用计算允许用户只为他们所需用到并且已经用到的那部分资源付费。云计算以服务的形式提供计算、存储、应用资源的思想与效用计算非常类似。两者的区别不在于这些思想背后的目标,而在于组合到一起,是这些思想成为现实的现有技术。云计算是以虚拟化技术为基础,提供最大限度的灵活性和可伸缩性。云计算服务提供商可以轻松地扩展虚拟环境,以通过提供者的虚拟基础设施提供更大的宽带或计算资源。效用计算通常需要类似云计算基础设施的支持,但并不是一定需要。同样,在云计算之上可以提供效用计算,也可以不采用效用计算。基于以上理解,把效用计算作为云计算的七种服务形式之一。