深度剖析云计算背后采用的具体技术.docVIP

  • 1
  • 0
  • 约1.14万字
  • 约 13页
  • 2021-08-11 发布于广东
  • 举报

深度剖析云计算背后采用的具体技术.doc

深度剖析云计算背后采用的具体技术 來源:计算机世界报2008年05月12日第17期38-40作者:淸华大学陈康郑纬民发表丁?: 2008-08-20 云计算作为一种新型的计算模式,还处于早期发展阶段。众多大小不一、类型各杲的提供商提供 了各自基于云计算的应用服务。本文通过介绍亚马逊、Google、I BM这三种典型的云计算实 现,为读者剖析在“云计算”背后所采用的具体技术,解析当前云计算的平台建设方法以及应用构 建方式。 云计算作为一种新型的计算模式,还处于早期发展阶段。众多大小不一、类型各异的 提供商提供了各自基于云计算的应用服务。本文通过介绍亚马逊、Google. IBM这三种典 型的云计算实现,为读者剖析在“云计算”背后所采用的具体技术,解析当前云计算的平台 建设方法以及应用构建方式。 ■淸华大学陈康郑纬民 实例1: Google的云计算平台与应用 Google的云计算技术实际上是针对Google特定的网络应用程序而定制的。针对内部 网络数据规模超大的特点,Google提出了一?整套基于分布式并行集群方式的基础架构,利 用软件的能力来处理集群中经常发牛的节点火效问题。 从2003年开始,Google连续几年在计算机系统研究领域的最顶级会议与杂志上发 表论文,揭示其内部的分布式数据处理方法,向外界展示其使用的云计算核心技术。从其 近几年发表的论文來看,Google使用的云计算基础架构模式包括四个相互独立又紧密结合 在一起的系统。包括Google建立在集群Z上的文 件系统Google File System ,针对 Google应用程序的特点捉出的Map/ Reduce编程模式,分布式的锁机制Chubby以及 Google开发的模型简化的大规模分布式数据库BigTable。 Google File System 文件系统 为了满足Google迅速增长的数据处理需求,Google设计并实现了 Google文件系统 (GFS, Google File System) o GFS与过去的分布式文件系统拥有许多相同的H标,例 如性能、可伸缩性、可靠性以及可用性。然而,它的设计还受到Google应用负载和技术 环境的影响。主要体现在以下四个方而: 集群中的节点失效是一种常态,而不是一种异常。由于参与运算与处理的节点数H 非常庞大,通常会使用上千个节点进行共同计算,因此,每吋每刻总会有节点处在失效状态。 需要通过软件程序模块,监视系统的动态运行状况,侦测错谋,并且将容错以及白动恢复系 统集成在系统中。 Google系统中的文件大小与通常文件系统中的文件大小概念不一样,文件大小通 常以G字节计。另外文件系统中的文件含义与通常文件不同,一个大文件可能包含人量数 目的通常意义上的小文件。所以,设计预期和参数,例如I/O操作和块尺寸都要重新考虑。 Google文件系统中的文件读写模式和传统的文件系统不同。在Google应用(如 搜索)中对大部分文件的修改,不是覆盖原有数据,而是在文件尾追加新 数据。对文件的 随机写是几乎不存在的。对于这类巨大文件的访问模式,客户端对数据块缓存失去了意义, 追加操作成为性能优化和原子性(把一个事务看做是一个程序。它要么被完整地执行,要 么完全不执行)保证的焦点。 文件系统的某些具体操作不再透明,而且需要应用程序的协助完成,应川程序和文 件系统API的协同设计提高了整个系统的灵活性。例如,放松了对GFS —致性 模型的耍 求,这样不用加重应用程序的负担,就大大简化了文件系统的设计。还引入了原子性的迅加 操作,这样多个客户端同时进行追加的时候,就不需要额外的同步操作了。 总Z,GFS是为Google应用程序本身而设计的。据称,Google已经部署了许多GFS 集群。有的集群拥有超过1000个存储节点,超过300T的换盘空间,被不同机器上的数 百个客八端连续不断地频繁访问着。 下图1给出了 Google File System的系统架构,一个GFS集群包含一个主服务器 和多个块服务器,被多个客户端访问。文件被分割成固定尺寸的块。在每个块创建的时候, 服务器分配给它一个不变的、全球惟一的64位块句柄对它进行标识。块服务器把块作为 linux文件保存在木地硬盘上,并根据指定的块句柄和字节范围来读写块数据。为了保证 可靠性,每个块都会复制到多个块服务器上,缺省保存三个备份。主服务器管理文件系统所 有的元数据,包扌舌名字空间、访问控制信息和文件到块的映射信息,以及块当前所在的位 置。GFS客户端代码被嵌入到每个程序里,它实现了 Google文件系统API,帮助应用程 序与主服务器和块服务器通信,对数据进行读写。客八端跟丄服务器交互进行元数据操作, 但是所有的数据操作的通信都是直接和块服务器进行的。客户端提供的访问接口类似丁 P

文档评论(0)

1亿VIP精品文档

相关文档