一,什么是云计算?
狭义云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算的核心思想,是将大量用网络连接的计算资源统一管理和调度,构成一个计算资源池向用户按需服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。云计算的产业三级分层:云软件、云平台、云设备。
二,云计算的起源。
云计算最早为Google、Amazon等其他扩建基础设施的大型互联网服务提供商所采用。于是产生一种架构:大规模扩展,水平分布的系统资源,抽象为虚拟IT服务,并作为持续配置、合用的资源进行管理。这种架构模式被George Gilder在其2006年10月在Wired杂志上发表的文章(《The Information Factories》)中进行了详细介绍。Gilder所描写的服务器庄园在架构上与网格计算相似,但其中网格用于松散结合的技术计算应用程序,而这种新的云模式则应用于互联网服务。
“在此构架中,数据大多驻留在互联网某个位置的服务器上,而应用程序则运行于“云服务器”和用户浏览器上。”
---摘自G.Gilder《The Information Factories》
三,云计算的关键技术。
1,数据存储技术。为保证高可用、高可靠和经济性,云计算采用分布式存储的方式来存储数据,采用冗余存储的方式来保证存储数据的可靠性,即为同一份数据存储多个副本。另外,云计算系统需要同时满足大量用户的需求,并行地为大量用户提供服务。因此,云计算的数据存储技术必须具有高吞吐率和高传输率的特点。目前各IT厂商多采用GFS或HDFS的数据存储技术。
2,数据管理技术。云计算系统对大数据集进行处理、分析向用户提供高效的服务。因此,数据管理技术必须能够高效的管理大数据集。其次,如何在规模巨大的数据中找到特定的数据,也是云计算数据管理技术所必须解决的问题。云计算的特点是对海量的数据存储、读取后进行大量的分析,数据的读操作频率远大于数据的更新频率,云中的数据管理是一种读优化的数据管理。因此,云系统的数据管理往往采用数据库领域中列存储的数据管理模式。将表按列划分后存储。
例如谷歌采用BigTable的数据管理技术。
3,编程模式。为了使用户能更轻松的享受云计算带来的服务,让用户能利用该编程模型编写简单的程序来实现特定的目的,云计算上的编程模型必须十分简单。必须保证后台复杂的并行执行和任务调度向用户和编程人员透明。云计算采用类似MAP-Reduce的编程模式。现在所有IT厂商提出的“云”计划中采用的编程模型,都是基于MAP-Reduce的思想开发的编程工具。
四,云计算架构下提供的三种层次的服务。
1,软件即服务(SaaS):为用户提供基于云基础架构的应用软件服务,例如:CRM、ERP、HER。
2,平台即服务(PaaS):为用户提供基于可扩展的大规模基础设施的平台能力与资源服务,例如云应用开发与运行环境、用户数据、信息资源、公共服务能力。
3,基础设施即服务(IaaS):为用户提供按需付费的资源服务,例如虚拟服务器、存储等。