基于Hadoop的云计算与存储平台研究与实现

  随着互联网技术的发展,数宇信息正在成指数增加,根据Internet Data Cente:发布的Digital Universe报告显示,在未来8年中所产生的数据量将达到40 ZB,相当于每人产生5200 G的数据,如何高效地计算和存储这些海量数据成为互联网企业所要而对的挑战。传统的大规模数据处理大多采用并行计算、网格计算、分布式高性能计算等,耗费昂贵的存储与 计算资源,而且对于大规模数据计算任务的有效分配和数据合理分割都需要复杂的编程才可以实现。基于Hadoop分布式云平台的出现成为解决此类问题的良好 途径,本文将在综述Hadoop核心技术:HDFS和MapReduce基础上,利用VMware虚拟机搭建一个基于Hadoop分布式技术的高效、易扩 展的云数据计算与存储平台,并通过实验验证分布式计算与存储的优势。

  1、Hadoop及其相关技术

  Hadoop是并行技术、分布式技术和网格计算技术发展的产物,是一种为适应大规模数据计算和存储而发展起来的模型架构。Hadoop是Apache 公司旗下的一个分布式计算和存储的框架平台,能够高效存储大量数据,而且可以编写分布式应用程序来分析计算海量数据。Hadoop可在大量廉价硬件设备集 群中运行程序,为各应用程序提供可靠稳定的接口来构建高扩展性和高可靠行的分布式系统。Hadoop具有成本低廉、可靠性高、容错性高、扩展性强、效率 高、可移植性强、免费开源的优点。

  Hadoop集群为典型Master/Slave、结构,基于Hadoop的云计算与存储架构模型如图1所示。

图 1 基于Hadoop的云计算与存储架构模型

  1.1 Hadoop分布式文件系统HDFS

  HDFS是一个运行在大量廉价硬件之上的分布式文件系统,它是Hadoop平台的底层文件存储系统,主要负责数据的管理和存储,对于大文件的数据访问 具有良好性能。HDFS与传统的分布式文件系统相似,但是也存在着一定的不同,具有硬件故障、大数据集、简单一致性、数据流式访问、移动计算的便捷性等特 点。HDFS的工作流程及架构如图2所示。

图 2 HDFS的工作流程及架构结构

  一个HDFS集群中有一个NameNode和多个DataNode。如图2所示,NameNode是中心服务器, 它用来管理文件系统的元数据信息以及客户端对文件的读写访问,维护文件系统树及其子节点下的所有文件和目录。这些信息以编辑日志文件(Editlog)和 命名空间镜像文件(FsImage)的形式保存在磁盘中。NameNode还暂时记录着各个块(Block)所在的DataNode信息。其功能主要有: 管理元数据和文件块;简化元数据更新操作;监听和处理请求。

  DataNode通常在集群中一个节点一个,用来存储、检索数据块,响应NameNode下达的创建、复制、删除数据块的命令,并定时向 NameNode发送“心跳”,通过心跳信息向NameNode汇报自己的负载情况,同时通过心跳信息来接受NameNode下达的指令信 息;NameNode通过“心跳”信息来确定DataNode是否失效,它定时ping每个DataNode,如果在规定的时间内没有收到 DataNode的反馈就认为此节点失效,然后对整个系统进行负载调整。在HDFS中,每个文件划分成一个或多个blocks(数据块)分散存储在不同的 DataNode中,DataNode之间进行数据块的相互复制而形成多个备份。

  1.2 Map/Reduce编程框架

  Map/Reduce是Hadoop用来处理云计算中海量数据的编程框架,简单易用,程序员在不必了解底层实现细节的基础上便可写出程序来处理海量数据。利用Map/Reduce技术可以在数千部服务器上同时开展广告业务和网络搜索等任务,并可以方便地处理TB、PB,甚至是EB级的数据。

  Map/Reduce框架由JobTracker和TaskTracker组成。JobTracker只有一个,它是主节点,负责任务的分配和调度, 管理着几个TaskTracker;TaskTracker一个节点一个,用来接受并处理JobTracker发来的任务。

  MapReduce针对集群中的大型数据集进行分布式运算,它的整个框架由Map和Reduce函数组成,处理数据时先执行map再执行 reduce。具体执行过程如图3所示。执行map函数前先对输入数据进行分片;然后将不同的片段分配给不同的map执行,map函数处理之后以 (key,value)的形式输出;在进入reduce阶段前,map函数先将原来的(key,value)分成多组中间的键值对再发给一个 reducer进行处理;最后reduce函数合并key相同的value,并输出结果到磁盘上。

图 3 MapReduce计算过程

123下一页

时间: 2024-11-05 18:39:17

基于Hadoop的云计算与存储平台研究与实现的相关文章

基于Hadoop的云计算试验平台搭建研究

基于Hadoop的云计算试验平台搭建研究 张岩 郭松 赵国海 Hadoop是一个免费的开源云平台,是允许在集群计算机上分布式处理大数据的软件框架.它是一种可靠.高效.可伸缩的云平台,很适合在实验室环境下进行模拟测试.以Hadoop为基础,借助虚拟机VMware以及Linux.ubuntu.Hadoop.java-jdk等软件,详细地介绍了单机环境下的虚拟云平台搭建过程,并给出具体的实例搭建过程.在设计实例中详细的论述了虚拟机.java.Hadoop等软件的安装.设置.测试过程.实现了在实验室环境

基于Hadoop的云计算模型研究及气象应用

基于Hadoop的云计算模型研究及气象应用 南京信息工程大学  张建 本文的主要工作如下: 首先对气象数据的特点进行分析,并指出将气象数据直接存储于Hadoop中存在的问题.根据气象数据的特点将设计基于Trie树变形的文件合并算法.在此基础上通过实验验证,数据高效率处理.安全等方面得到有效的提升和保障. 其次,设计并实现基于Hadoop的海量气象异构数据存储和计算框架,针对气象数据中实时提取有效数据的性能效率.数据保密安全.灾害备份等问题,利用HDFS存储气象数据以及利用MapReduce构建并

基于Hadoop的分布式服务注册中心研究和实现

基于Hadoop的分布式服务注册中心研究和实现 上海交通大学  杨柳 在分析了Web服务注册中心和云计算平台的基础上,本文提出了一种建立在云上的分布式服务注册中心的应用模型,称为HDSR (Hadoop-based Distributed Service Registry),它采用了Hadoop云平台来实现.该模型既可以支持基于服务行为的服务发现工作,也可以支持基于服务质量的服务发现工作.本文重点研究了服务数据的分布式存储与并行查询在Hadoop平台上的实现.在HDSR中,Hadoop分布式文件

基于Hadoop 的校园云存储系统的研究

基于Hadoop 的校园云存储系统的研究 高新成, 王莉利 针对海量数据的存储问题,传统方法一般是通过购置更多数量的服务器来提升计算和存储能力,存在硬件成本高,存储效率低等缺点.通过对Hadoop 框架和MapReduce 编程模型等云计算核心技术的分析和研究,提出了一种基于Hadoop 框架的海量数据存储模型,并在此模型的基础上,设计并实现了基于Hadoop 的校园云存储系统. 关键词-Hadoop; MapReduce; 云计算; 分布式计算; 存储模型 temp_1210021608512

基于Hadoop的遥感数字图像处理方法研究

基于Hadoop的遥感数字图像处理方法研究 东北师范大学   周涛 本文基于Hadoop云计算系统,主要利用并行编程框架MapReduce实现遥感数字图像的增强处理以及对增强后图像进行聚类,并与PC串行处理进行比较研究.针对遥感数字图像的整体亮度偏低.目视效果较差的特点,传统的图像增强方法在遥感数字图像上的处理无法达到人眼舒适的目视判读的效果,以及影响后续处理的问题,本文在无损增强方法的基础上进行了改进,使得原始图像的有效图像区域的无效像素点能够参与增强,实验结果表明该方法达到了很好的目视效果.

基于Hadoop的云移动信息服务模型研究

基于Hadoop的云移动信息服务模型研究 马林山,赵庆峰,肖新国 在分析开源平台Hadoop的相关技术的基础上,提出了基于该平台的移动信息服务模型,并详细介绍了模型的各个构建组成部分.系统的功能设计.经测试,效果良好.实用性较强. 关键词:云计算:Hadoop:HadoopDB:移动阅读:元数据:模型 基于Hadoop的云移动信息服务模型研究

[文档]基于云服务的会议服务平台研究与实现

基于云服务的会议服务平台研究与实现 魏生辉,郑依华,南凯 针对传统会议组织和管理方式在信息采集.流通.存储和共享方面的不足,分析云服务.虚拟化技术和Duckling 协同工作环境的结构和应用,提出由门户.虚拟化后台和会议站点组成的会议服务平台.该平台采用虚拟化技术,实现对计算.存储.网络.设备等资源的管理和调度,通过创建会议管理网站,提供一键建站.灵活定制的服务.应用结果验证了该平台的有效性. 关键词:云服务:虚拟化:软件即服务:多站点:会议服务 temp_12051915181341.pdf

基于Hadoop的多星表存储与交叉证认的设计与实现

基于Hadoop的多星表存储与交叉证认的设计与实现 山东大学 张夏旭 面对海量天文数据,如何高效的存储和对多星表进行交叉证认显得尤为重要.海量天文数据处理必须要使用分布式.并行计算等大数据处理技术才能有效解决.本文对利用Hadoop处理海量天文数据进行了研究,主要工作分为以下三部分: 1.利用Hadoop的HBase组件,构建对不同星表数据的有效存储,提高集群磁盘利用率和星表信息查询效率. 2.在对HEALPix和HTM两种伪二维球面索引方法进行研究的基础上,结合Hadoop实现多个星表之间高效

基于Hadoop的智能家居信息处理平台

基于Hadoop的智能家居信息处理平台 徐源吾 王珣 智能家居包含门禁系统.温湿度系统.室内滴灌系统.照明系统等.每一个系统包含了不同的终端,每一个终端安装有不同的传感器,传感器感知周围环境产生大量数据.用户数的不断增加将产生海量数据.本文针对传统的海量数据处理方法会出现硬件成本高.计算瓶颈等问题,在云计算理论的基础上针对智能家居中的门禁系统.温湿度系统.滴灌系统和照明系统搭建了基于Hadoop的数据处理平台.该平台对大量传感信息进行分布式并行处理,并根据处理结果向底层设备发送指令以实现智慧化服