GOOGLE云平台

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

GOOGLE,AMAZON,MICROSOFT,VMWARE云平台的异同

姓名:孔敏

学号:3120204204

班级:通信122

GOOGLE,AMAZON,MICROSOFT,VMWARE云平台的异同

云平台的提出:

Google的云计算技术实际上是针对Google特定的网络应用程序而定制的。针对内部网络数据规模超大的特点,Google提出了一整套基于分布式并行集群方式的基础架构,利用软件的能力来处理集群中经常发生的节点失效问题。从2003年开始,Google连续几年在计算机系统研究领域的最顶级会议与杂志上发表论文,揭示其内部的分布式数据处理方法,向外界展示其使用的云计算核心技术。从其近几年发表的论文来看,Google 使用的云计算基础架构模式包括四个相互独立又紧密结合在一起的系统。包括Google建立在集群之上的文件系统Google File System,针对Google应用程序的特点提出的Map/Reduce编程模式,分布式的锁机制Chubby以及Google开发的模型简化的大规模分布式数据库Big Table。

Amazon的弹性计算云由名为Amazon网络服务(Amazon Web services)的现有平台发展而来。2006年3月,Amazon发布了简单存储服务(simple storage service,简称S3),用户使用SOAP协议存放和获取自己的数据对象。在2007年7月,Amazon公司推出了简单队列服务(simple queue service,简称SQS),这项服务能够使得托管虚拟主机之间发送的消息。支持分布式程序之间的数据传递,无须考虑消息丢失的问题。Amazon又继续提供了EBS(elastic block storage)服务,为用户提供块级别的存储接口。在提供这些基础设施的同时,Amazon公司开发了弹性计算云EC2系统,开放给外部开发人员使用。

MICROSOFT自己给Azure下的定义,它是一个云计算操作系统平台,可以为开发者提供按需定制的计算服务和基于微软数据中心的Web应用程序。已推出将近两年的Windows Azure platform融合了许多微软应用。其中包括Windows Azure、SQL Azure和Windows Azure platform App Fabric。Windows Azure可看成一个云计算服务的操作系统;SQL Azure是云中的数据库;App Fabric是一个基于Web的开发服务,它可以把现有应用和服务与云平台的连接和互操作变得更为简单。通俗点来说,微软想通过Azure来打通一条从本机到互联网的通道,而本机的常见应用在Azure的协调下可以很好地应用到网间。

VMWARE在2011年4月15日推出了开放式的PAAS实现Cloud Foundry。作为新一代云应用平台,Cloud Foundry专为云计算环境、企业级数据中心和公有云服务提供商所打造。Cloud Foundry可以简化现代应用程序的开发、交付和应用过程,在面对多种共有云和私有云选择、符合业界标准的高效开发框架以及应用基础设施服务时,可以显著提高开发者在云环境中部署和运行应用程序的能力。

云平台的介绍:

GOOGLE云平台的四个系统:

1、Google File System 文件系统:为了满足Google迅速增长的数据处理需求,Google设计并实现了Google文件系统GFS (Google File System)。GFS与过去的分布式文件系统拥有许多

相同的目标,例如性能、可伸缩性、可靠性以及可用性。然而,它的设计还受到Google应用负载和技术环境的影响。主要体现在以下四个方面:[1]集群中的节点失效是一种常态,而不是一种异常。由于参与运算与处理的节点数目非常庞大,通常会使用上千个节点进行共同计算,因此,每时每刻总会有节点处在失效状态。需要通过软件程序模块,监视系统的动态运行状况,侦测错误,并且将容错以及自动恢复系统集成在系统中。[2]Google系统中的文件大小与通常文件系统中的文件大小概念不一样,文件大小通常以G字节计。另外文件系统中的文件含义与通常文件不同,一个大文件可能包含大量数目的通常意义上的小文件。[3]Google文件系统中的文件读写模式和传统的文件系统不同。在Google应用中对大部分文件的修改,不是覆盖原有数据,而是在文件尾追加新数据。对文件的随机写是几乎不存在的。对于这类巨大文件的访问模式,客户端对数据块缓存失去了意义,追加操作成为性能优化和原子性(把一个事务看做是一个程序。它要么被完整地执行,要么完全不执行)保证的焦点。[4]文件系统的某些具体操作不再透明,而且需要应用程序的协助完成,应用程序和文件系统API的协同设计提高了整个系统的灵活性。总之,GFS是为Google 应用程序本身而设计的。据称,Google已经部署了许多GFS集群。有的集群拥有超过1000个存储节点,超过300T的硬盘空间,被不同机器上的数百个客户端连续不断地频繁访问着。

2、Map Reduce分布式编程环境:为了让内部非分布式系统方向背景的员工能够有机会将应用程序建立在大规模的集群基础之上,Google

还设计并实现了一套大规模数据处理的编程规范Map/Reduce系统。这样,非分布式专业的程序编写人员也能够为大规模的集群编写应用程序而不用去顾虑集群的可靠性、可扩展性等问题。应用程序编写人员只需要将精力放在应用程序本身,而关于集群的处理问题则交由平台来处理。Map Reduce是Google提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念Map(映射)和Reduce(化简),和他们的主要思想,都是从函数式编程语言借来的,还有从矢量编程语言借来的特性。

3、分布式的锁机制Chubby:Chubby主要用于解决分布式一致性问题,是一种粗粒度的分布式锁服务。Chubby系统本质上就是一个分布式的,存储大量小文件的文件系统。Chubby中的锁就是文件,在GFS的例子中创建文件就是进行加锁操作,创建文件成功的那个server其实就是抢占到一个“锁”。用户通过打开,关闭和存取文件,获取共享锁或者独占锁,并且通过通信机制,向用户发送更新信息。

4、分布式大规模数据库管理系统Big Table:构建于上述两项基础之上的第三个云计算平台就是Google关于将数据库系统扩展到分布式平台上的Big Table系统。很多应用程序对于数据的组织还是非常有规则的。一般来说,数据库对于处理格式化的数据还是非常方便的,但是由于关系数据库很强的一致性要求,很难将其扩展到很大的规模。为了处理Google内部大量的格式化以及半格式化数据,Google 构建了弱一致性要求的大规模数据库系统Big Table。

相关文档
最新文档