云服务协议——第二部分(下)

日期: 2009-06-07 作者:William Brogden翻译:杨君 来源:TechTarget中国 英文

云中的JavaSpaces   Java与tuple-space计算,二者简直是天作之合,因为tuple-space计算比较容易序列化Java对象,但是实施的语言种类很多。本文将探讨JavaSpaces在网络服务中的可行性。   Sun似乎将JavaSpaces看成了一项成熟的技术,将让GigaSpaces这样的公司承担商业实施的任务,该公司自2000年起就一直在推广JavaSpaces。GigaSpaces还推出了一个叫做XAP的云应用服务器平台,该平台主要在Amazon EC2和个人系统上运行。

用户可以在GigaSpaces网站上免费下载,而且网站上还有丰富的文件和展示以供参考。   Ha……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

云中的JavaSpaces

  Java与tuple-space计算,二者简直是天作之合,因为tuple-space计算比较容易序列化Java对象,但是实施的语言种类很多。本文将探讨JavaSpaces在网络服务中的可行性。

  Sun似乎将JavaSpaces看成了一项成熟的技术,将让GigaSpaces这样的公司承担商业实施的任务,该公司自2000年起就一直在推广JavaSpaces。GigaSpaces还推出了一个叫做XAP的云应用服务器平台,该平台主要在Amazon EC2和个人系统上运行。用户可以在GigaSpaces网站上免费下载,而且网站上还有丰富的文件和展示以供参考。

  Hadoop–开放源MapReduce实施

  谷歌经常使用一个程序架构,并将其称为“MapReduce”,代指整个系统,大量的数据,成千上百的商品电脑,我们可以在这里描述一下这个程序模型和实施。许多程序设计员都实施了自己独特版本的架构,其中使用Java的Apache Hadoop开放源项目最受人瞩目。由于众多专家的贡献,Apache Hadoop非常灵活,经常发布新版本,目前是0.20版本(2009年4月),所以目前这项技术并不成熟。

  尽管Hadoop相对较新,但这项技术却广泛应用于雅虎搜索引擎这样的商业系统。就如同每一个想要销售云计算服务的公司一样,Amazon公司所销售的弹性计算云也有Hadoop的支持,Hadoop最为关键的部分是文件系统和作业处理系统。

  Hadoop是分布式文件系统

  桌面的操作系统并不能使用Hadoop分布式文件系统,这个“分布式”系统不能容忍廉价的商品硬件,尤其不能依靠大量的复制和高吞吐量来运行Linux,这样的高吞吐量往往要求不提供典型的文件系统功能。已经写入系统并已关闭的文件无法改变,这就大大简化了复制数据、寄存和存取控制。单一的HDFS实例文件中能包含大量的数据,这些数据分布在成千上万的服务器当中。为了提高网络的速度,并简化网络,文件读取操作会处理大量的数据,64MB或者更大。除此之外,许多流程还使用典型的文件名称和目录结构之类的简化措施。

  这些设计的初衷是为了提高计算流程的数据转换速率。高吞吐量要求较短的等待时间和随意访问,这一点要依靠交互应用操作来实现。如果能管理好HDFS,那么一个需要文件的进程就可以从关系最为紧密的服务器中复制文件。

  Hadoop作业处理

  如果要使用Hadoop,必须将其整合到MapReduce逻辑结构当中。最好是把问题细分,然后单独处理每个具体的小问题,这样就会涵盖所有的输入数据。此外,必须能够用一种形式表达结果,这种形式的结果可以和其他所有的流程联系在一起,并创建最终结果。

  ·映射——整个问题空间被分解成独立可处理的子集,以便分散在各部门的工作人员进行处理。输入数据以关键对象和价值对象的形式表现出来,这些关键对象和价值对象必须能够序列化的对象结合。请注意“映射”在这里有两层含义,问题空间被映射到独立的任务当中,每个任务的描述和返回的数据都是映射的形式。

  ·简化——所有的工作人员将结果检索列表返回,一个或者多个“简化”流程将所有的结果检索列表结合在一起,以便得出最终结果。为了实现这一点,必须能够按照关键词将返回的搜索列表分类,以确定是否能够将结果结合在一起。最典型的例子就是计算在许多文档中重复的次数。结果列表有关键词和个数数值,关键词按照音序分类,这样简化进程就可以决定何时添加数值,何时将列表结合。

  Hadoop的正反面

  Hadoop可以分析大量数据的工作效率、计算效率和HDFS故障容错度。故障容错度高可以使用廉价硬件。除了对映射工作的限制外,Hadoop还有一个美中不足之处,就是只有一个文件系统主程序索引和一个作业分布式进程。

  概述

  JavaSpaces关注分布式工作,以便用更为灵活的系统定义作业。JavaSpaces进程可以使用任何类型的文件系统和数据库。Hadoop关注通过受限的客户端,访问大量数据集的速度和安全性,以便读取文件并处理映射到各个独立进程之中的问题。

相关推荐