• 1
  • 2
  • 3
  • 4
  • 5
阿里云应用开发 首 页  »  帮助中心  »  云服务器  »  阿里云应用开发
什么是云计算与网格计算
发布日期:2016-7-25 20:7:0

  现在,云计算是非常火爆的一项新技术,它被网友炒的非常火热,这里就介绍“什么是云计算和网格计算的差别?”我承认直到现在还从未对此问题做出过令自己满意的解答或解释。当和工程师与学术界人士一起交流探讨云计算后我常被这一问题问住,有适合也做出临场搪塞似的回答:“云计算和网格计算都是分布式计算,因为网格计算也带有服务、按需收费、虚拟资源整合等概念,因此云计算应该是网格计算的一个子问题”。

  事后上网搜索也只能够找到诸如:“科学家使用网格计算,“云计算是网格计算的商业实现”,普罗大众使用云计算”云云,总觉得有点无关痛痒。因为一直对这样的回答不甚满意,一直还在继续想这个问题。似乎最近有了一点窃以为的想法,斗胆亮出供参考评论。

  对云计算,特别对于它的未来,我想可作这样一个趋势性的理解:用户信息将永久性地在大型数据中心的服务器上存储和处理,而只是临时性地暂存到客户终端设备上为用户作人机交互式的使用。这里“暂存”要用cache这个字才更精确。由于cache还有“高速缓存”与“本地暂存”的译法。前者译法的意思是CPU将一小部分经常要处理的数据从比较慢的主内存搬到自身带有的高速暂存器里,就近处理以提高处理速度。后者的意思是网页浏览器把最近访问过的网页暂存在本地磁盘,再次访问的时候就不必再到网上去舍近求远了。今后用户信息在大型数据中心的服务器上存储与处理的永久性,而在客户终端设备机上cache式暂存与使用的临时性,这应是用户信息今后在我们这个世界里存在的一种标准状态。这就像现在我们只在钱包里存放少许现金以方便使用,把大量金钱存入银行账户里以确保安全,这是一个道理。

  本地计算的“自我服务” 我们今天的大多数计算和信息处理还是在本地机器上进行的,接受服务的成分很有限。用本地机器处理信息的时候,我们已经习惯做许多与我们信息处理与使用无甚关系的事情。举几个显而易见习以为常的事务处理为例:比如我们为数据做安全冗余备份。若说处理信息的目的是为了让信息变得更有用,使用信息的目的是让我们的知识变得更完善,很显然,我们为自己的数据做冗余备份这样的事情跟我们的这两个目的毫无关系。类似的事务处理比如为腾出磁盘空间而删除压缩文件,为自己的文件创建与管理目录,杀毒,打补丁等,都是与我们处理与使用信息的目的无关却常常不得不作的事。让我管这一类为信息在本地处理的时候必须要做的事务性处理叫做“自我服务(self service)”。信息在本地机器上处理的时候我们需要做的自我服务的事务有不少:购买、安装、日常维护、升级那些十分复杂的、在本地客户机上跑的操作系统与应用软件,这些大概可被认为是所有自我服务事务中最糟糕最令人讨厌的一类了。但只要信息处理还在本地客户机上进行,自我服务事务就不可避免。

  云计算的服务性因为云计算的用户在客户端缺少数据,相对知识贫乏,因此服务必成为云计算的要素。首先由于客户端没有必要永久性存储数据,不再重视数据处理功能(客户端重视的功能是简便易用的人机交互界面),自我服务类的事务会变得越来越无用处。而在云上自我服务的概念就更不复存在了,取而代之的是接受服务。举例:如果一个用户在云上做了一份文件拷贝,其目的不论是什么,一定不是为了做安全冗余备份,那是云服务商的任务,不是用户的事。又比如今后如果要卖数据压缩,重复数据删除,杀毒之类软件的,还是去找云计算服务商,比如说阿里云,客户端的用户是不会太有兴趣的。恶意攻击客户端所能得逞的价值越来越低,因此在客户端杀毒的价值也走低。

  更进一步,今后不仅操作系统,而且许多应用软件尤其是办公文档处理软件,大都将跑在云里大型数据中心的服务器上。当用户使用一个云里的软件处理数据的时候,大多数情况是该软件早就已在那儿跑着了,用户的使用只不过是让该软件为用户发一个线程(thread),而不像现在本地计算的情形,要先从外存将软件装载入内存启动成为一个进程(process)后再使用。发一个线程要远比启动一个进程节省CPU周期和内存空间,因此在云上以作为服务、多线程的方式使用软件比起在云下本地客户端机器上以“自我服务”、启动进程的方式使用软件要更节省计算资源,更绿色。

  网格计算的协同性若说云计算是对IT资源进行合理化分配重组,实现轻化客户端而重化数据中心服务器端,网格计算则注重对资源作集成与实现共享而非强调合理化分配重组。这里资源的集成和共享不仅只对IT资源而言,而且还包含数据资源、知识资源、信息资源、专家资源,稀缺科研设备资源等。对IT资源的集成体现为实现高性能计算及海量信息处理的能力与容量上,而对其它类别资源的集成就更多体现为共享、协同、合作使用集成的资源,构造成一个“虚拟组织”(virtual organization),从而能解决一些分散单干时不容易解决的任务。因此网格计算也常常又叫做虚拟组织里的协同计算。所以有必要强调:与云计算用户端“缺乏知识”,避免存储数据,轻化IT资源的情况不同,网格计算的用户即虚拟组织的参与者不仅不缺乏知识、数据、专家、IT或者稀缺科研设备等资源,正相反他们是这些资源的拥有者,甚至还是富有者,只不过他们还要通过协同合作的方式来达到这些资源的互补性共享,以实现更大化的资源利用。由此看来,“科学家使用网格计算,普罗大众使用云计算”,这样的说法很有道理。