云计算、Amazon EC2、Hadoop简介

近来云计算越来越热门了,云计算已经被看作 IT 业的新趋势。云计算可以粗略地定义为使用自己环境之外的某一服务提供的可伸缩计算资源,并按使用量付费。可以通过 Internet 访问 “云” 中的任何资源,而不需要担心计算能力、带宽、存储、安全性和可靠性等问题。

  先要介绍一下云计算系统的结构。图 1 显示云计算的各个层以及现有的一些服务。

 

图 1. 云计算的层和现有服务

 

 

  基础设施即服务(Infrastructure-as-a-service, IaaS)是指以服务的形式租借基础设施(计算资源和存储)。IaaS让用户可以租借计算机(即虚拟机)和数据中心,可以指定特定的服务质量约束,比如可以运行某些操作系统和软件。Amazon EC2在这层中作为IaaS,向用户提供虚拟主机。

  平台即服务(Platform-as-a-Service, PaaS)主要关注软件架构或服务,提供在基础设施中进行“云”计算所用的API。Apache Hadoop 作为PaaS,它构建在虚拟主机上,提供云计算平台。

Amazon EC2

  Amazon EC2 是一个Web服务,它允许用户请求具有各种资源(CPU,磁盘,内存等)的虚拟主机。用户只需按使用的计算时间付费,其它事情全部交给Amazon处理。

  这些实例(Amazon Machine Image, AMI)基于Linux,可以运行您所需要的任何应用程序和软件。在从Amazon租借主机之后,可以像对待物理主机一样使用一般的SSH工具设置连接和维护主机。

  部署Hadoop云计算框架的最好方法是把它全部部署在AMI上,这样可以利用云资源,不需要考虑计算能力,带宽,存储等问题。

  对EC2的详细内容可以参考如下链接:http://www.ibm.com/developerworks/cn/web/ar-cloudaws3/

Apache Hadoop

MapReduce

  Apache Hadoop 是一个软件框架(平台),它可以分布式的操纵大量数据。它出现于2006年,由Google、Yahoo、IBM等公司支持。可以认为它是一种PaaS模型。

  它的设计核心是MapReduce实现和HDFS(Hadoop Distributed File System),它们源自MapReduce(由一份Google文件引入)和Google File System。

  MapRedue是Google引入的一个软件框架,它支持在计算机(即节点)集群上对大型数据集进行分布式计算。它由两个部分组成:映射(Map)和缩减(Reduce)。

  在映射过程中,主节点接收输入,把输入分割成更小的子任务,然后把这些子任务分配到工作节点上。

  工作节点处理这些小任务,把结果返回给主节点。

  然后在缩减过程中,主节点把所有子任务的结果组合成输出,这就是原任务的结果。图2 说明了MapReduce流程的概念。

  MapReduce 的优点是它允许对映射和缩减操作进行分布式处理。因为每个映射操作都是独立的,所有映射都可并行执行,这会减少总的计算时间。

图 2. Hadoop 集群的概念视图和 MapReduce 的流程

HDFS

  从最终用户的角度看,HDFS就像是传统的文件系统一样。可以使用目录路径对文件进行CRUD操作。但是,由于分布式存储的性质,有“NameNode”和“DataNode”的概念,它们承担各自的责任。

  NameNode 是 DataNode 的主节点。它在HDFS中提供元数据服务。元数据说明DataNode的文件映射。它还接收操作命令并决定哪些DataNode应该执行操作和复制。

  DataNode 作为HDFS的存储块。还响应从NameNode接收的块创建、删除、复制等命令。

  对HDFS的完整介绍可以参考官方网站。

JobTracker 和 TaskTracker

  在提交应用程序时,应该提供包含在HDFS中的输入目录和输入目录。JobTracker作为启动MapReduce应用程序的单一控制点,它决定应该创建多少个TaskTracker和子任务,然后把每个子任务分配给TaskTracker。每个TaskTracker向JobTracker报告状态和完成后的任务。

 

时间: 2024-07-30 11:47:15

云计算、Amazon EC2、Hadoop简介的相关文章

面向企业的云计算:第2部分:Amazon EC2 公共云上的 WebSphere sMash 和 DB2 Express-C

本系列文章的第1部分讨论了云计算的基本方面,包括云的层和不同的云类型及其优缺点,并解释了为何了解云对企业开发人员很重要.本文主要考察公共云,以及如何使用 IBM® WebSphere® sMash 和 IBM DB2® Express-C Amazon Machine Images (AMI) 交付宿主在 EC2 公共云基础设施上的 Web 应用程序. 简介 在 3 种类型的云中 -- 公共云.私有云和混合云 -- 公共云提供的产品是最出色.最成熟的.可访问性和廉价性是导致公共云日趋流行的两个关

Windows Azure和Amazon EC2 对决云计算

虽然有相当多的云厂商,但是在目前的云计算市场上有两个势均力敌的对手:微软和亚马逊.亚马逊涉足云领域时间较长,并且有超越微软的产品.但是软件巨头微软也有一些引人注目的能力.让我们来大体看一下这两种服务之间的比较. 功能 简单说,亚马逊比Windows http://www.aliyun.com/zixun/aggregation/13357.html">Azure服务更有能力.它提供更好的防火墙选项和数据加密,还集成了亚马逊的其他服务像Simple Storage Service (S3).

Amazon EC2之云计算初体验

什么是EC2 EC2全称Amazon Elastic Compute Cloud,是Amazon于2006年推出的新一代hosting服务,目前尚处于beta阶段,但是使用中没有发现什么问题,相当稳定.EC2的功能介绍参见:http://www.amazon.com/gp/browse.html?node=201590011 要用EC2,有两个概念必须先了解. Amazon Machine Image (AMI) - An Amazon Machine Image (AMI) is an enc

Amazon云计算服务EC2、S3介绍

转自:http://blog.csdn.net/liuliming3000/archive/2008/07/31/2750114.aspx •EC2主要功能•EC2使用流程•EC2模板映像•EC2的流量和IP费用•S3功能•S3中的概念与操作•S3客户端•S3使用实例•S3的价格•Amazon AWS影响力•Amazon AWS侧面影响力•Amazon AWS潜力 EC2主要功能创建包含应用.库.数据和配置的机器映像.或者使用时限配置好的模板映像.上传映像到Amazon S3.用Web Serv

4款开源云计算框架和工具简介

本文讲的是4款开源云计算框架和工具简介,[IT168 资讯]1.Enomalism (http://www.enomaly.com/) 云计算平台.Enomalism 是一个开放源代码项目,它提供了一个功能类似于 EC2 的云计算框架.Enomalism 基于 Linux,同时支持 Xen 和 Kernel Virtual Machine(KVM).Enomalism 提供了一个基于 TurboGears Web 应用程序框架和 Python 的软件栈. 2.Euclyptus (http://

《Spark Cookbook 中文版》一1.4 在Amazon EC2上部署Spark

1.4 在Amazon EC2上部署Spark Amazon弹性计算云(Amazon EC2)是一个能够提供可变大小的云计算实例的网络服务,Amazon EC2提供以下特性. 通过互联网按需提供IT资源. 提供足够多的实例. 像支付水电费账单一样,按你使用实例的时间付费. 没有配置成本,无需安装,没有任何开销. 当你不需要实例时,只需关闭或者终止它们即可离开. 支持所有常用操作系统. EC2提供不同类型的实例,以满足所有计算需求,例如通用实例.微实例.内存优化实例.存储优化实例等,并提供微实例的

Amazon EC2和Google App Engine,谁是最后的赢家

Amazon EC2和Google App Engine,两大服务平台,谁能更胜一筹,我打算从三个角度来对比这两大云计算平台:技术,业务和未来发展趋势,本文是技术方面的对比,ok,准备好咖啡,我们开始吧! 如果按平台类型来分,大家可能已经知道Amazon EC2属于IaaS(基础设施即服务),Google App Engine属于PaaS(平台即服务).不过,如果Amazon EC2给你一个安装了操作系统的平台,你就可以自己安装应用程序,并且使用AMI(Amazon Machine Image)

在Amazon EC2上运行Spark

在Amazon EC2上运行Spark Spark的ec2目录下有一个spark-ec2脚本,可以帮助你在Amazon EC2上启动.管理.关闭Spark集群.该脚本能在EC2集群上自动设置好Spark和HDFS.本文将会详细描述如何利用spark-ec2脚本来启动和关闭集群,以及如何在集群提交作业.当然,首先你必须在Amazon Web Services site上注册一个EC2的账户.   spark-ec2可以管理多个命名集群.你可以用它来启动一个新集群(需要提供集群大小和集群名称),关闭

《深入理解Hadoop(原书第2版)》——第2章 Hadoop中的概念 2.1 Hadoop简介

第2章 Hadoop中的概念 价格实惠的普通计算机经常满足不了应用程序的计算资源需求,很多企业的业务应用程序已经不再适合在单台廉价的计算机上运行.这时,一个简单昂贵的解决方案就是购买一些具有多CPU的高端服务器,这通常需要巨额资金.只要能买到最高端的服务器,这个解决方案就能够达到理想的效果,但预算往往是个大问题.另一个替代方案,就是搭建一个高可用的集群,这个集群经过专业的安装和精心的管理服务,使用起来就像一台计算机一样.很多高可用的集群都是企业专有的而且价格也十分贵. 为了获取所需的计算资源,一