虚拟化技术是云计算、云存储服务得以实现的关键技术之一。它将应用程序以及数据,在不同的层次以不同的面貌加以展现,从而使得不同层次的使用者、开发及维持人员,能够方便的使用开发及维护存储的数据、应用于计算和管理的程序。
虚拟技术亦分很多种,从不同的层次上来讲,有cpu一级的虚拟化技术(目前intel正在着手研究着,在底层硬件上直接运行多个操作系统),硬件层上一级的虚拟化技术-----操作系统、vmware都是在硬件之上建立虚拟化程序。还有建立在操作系统之上的虚拟化技术:高级语言虚拟化技术(java\C#)、指令动态解释执行的vmware\vpc、脚本语言运行时系统(如python\javascript、matlab、sql等)。
这些虚拟化技术在不同的层次起着不同的作用。如操作系统起到了“将硬件接口抽象”,并提供了应用程序以统一的编程接口使用硬件的能力。在操作系统上建立的vpc等虚拟化技术,使得用户可以在一个操作系统之上,再运行其它操作操作系统、不同体系应用程序的能力。而高级语言虚拟化技术(java),使得编程人员,以理想机器的角度来编写应用程序,进一步将硬件操作,甚至操作系统操作都隔离开来,完全是基于应用的目标来建立虚拟化。而脚本语言、第四代语言更是以高层次的抽象(虚拟化)来实现业务逻辑、应用程序逻辑。
不同层次的虚拟化技术各起着不同的作用。
对于云计算、云存储来说,需要抽象的地方很多。如云存储,用户并不关心“用户数据”具体存储在什么具体的地方。他们只关心:我如何使用存储的数据,我的数据将如何呈现到我的云操作系统终端来,这些数据存储是否安全等等。对于实现“云存储”的厂商,它得充分考虑,如何虚拟化地存储的问题,将不同的数据如何统一的存储及管理。
还有云计算,用户提交了一个计算请求,对于云计算中心来说,如何把这个请求具体到某个计算结点(cpu\存储单元)上执行,并且执行的数据是用户提供的数据。这些数据可能是存储在不同地方的,如何提取。当运算能力不足时,如何为用户增加计算能力。
这里涉及了:虚拟化存储管理,虚拟化计算管理。虚拟化存储管理就像是虚拟内存一样,当应用程序执行时,所占用的内存不足,操作系统为之增加虚拟内存,直至内存耗尽!虚拟化计算管理,就像是如何对进程、线程进行调度,并且管理对应的线程、进程资源。
云计算服务:使用云计算、云存储方式提供的网络服务。主要有计算类服务及存储类服务。当然,这是从云计算系统的角度来看的,从用户的角度来看,这种服务可以有很多形态,每一种形式都将是不同的“云计算商业模式”。
例如:目前流行的saas(软件即服务)业务。他们把企业数据统一存储在云计算中心,并且使用web服务程序,为用户提供操作这些数据的服务。这些saas业务具有相当经强的运算、存储方式的一致性,因而为目前出现最早的,也将是最先为用户接触的“云计算服务”。这种云计算服务,只针对的是企业运营流程,不具备跨行业性以及综合性,因而是“专有云计算”。
还有如:google的个人协作平台。它将用户的博客数据以简单易行的方式提供给用户。使得用户可以非常方便地定制自己的“个人站点”。里面的数据包括:不同类型的网页、图片以及其它的一些链接数据等。通过这种统一的数据存储、操作方式,为用户提供了云计算服务。
除此之外,google还为用户提供了在线文档的编辑以及存储服务。只要能上网,你有一个google帐号,你就可以新建你的个人数据文档,编辑、查看、下载你的个人文档资料。
值得注意的是:云计算服务是使用云计算、云存储方式而提供的网络服务。因而很多网络服务都可以称之为云计算服务。只是云的种类、大小、通用度等的不同。因而,云计算模式能不能为一个运营商挣钱,取决于它提供的服务是否有意义、为大众所接受和认可。云计算服务的模式也仅仅限于人的想像力而已!
【编辑推荐】