Hadoop架构的关键技术的分析与研究

来源 :科技风 | 被引量 : 0次 | 上传用户:wulizhu11
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:随着信息时代的飞速发展。海量数据的应用处理已经成为大家重点关注的首要问题。论文首先对Hadoop技术的产生及特点进行介绍,然后重点分析了Hadoop的两大关键技术分布式文件系统(HDFS)和MapReduce编程模型,最后对Hadoop的关键技术进行总结并给出一些看法,并对未来发展方向进行了展望。
  关键词:Hadoop;HDFS体系结构;MapReduce
  随着信息时代的飞速发展,随着各种数据的迅猛增长。海量数据的应用处理已经成为大家重点关注的首要问题。在很多传统的行业里,大量数据的查询与存储主要还是依靠关系型数据库管理系统。而Hadoop平台的出现,提供了廉价的处理大数据的能力。完美的解决了在企业里海量数据处理和应用的要求,使得Hadoop成为现代企业处理海量数据的最好的选择。
  论文首先对Hadoop技术的产生及特点进行介绍,然后重点分析了Hadoop的两大关键技术分布式文件系统(HDFS)和MapReduce编程模型,最后对Hadoop的关键技术进行总结并给出一些看法。
  一、Hadoop技术介绍
  Apache公司于2005年最先引入Hadoop,它源于google公司开发的MapReduce和Google File System(GFS)项目。Hadoop因为对并行分布处理“大数据”有利而得到特别重视,是新一代的架构和技术。Hadoop是一个分布式的计算平台,用户可以使用它开发并处理海量数据的各种应用软件。HDFS和MapReduce是Hadoop框架中最为核心的设计。HDFS主要负责海量数据的存储,MapReduce主要负责数据的计算。
  二、Hadoop的关键技术之——HDFS体系结构
  HDFS被称为分布式文件系统,是Hadoop的核心技术。HDFS的设计使得它适合运行在通用硬件上,可以部署在在廉价的机器上。HDFS的优势:HDFS可以处理超大文件,可以存储数GB级、数TB级、数PB级的超大文件;HDFS可以集群规模动态扩展,数百甚至数千个节点能够动态的加入到集群中;HDFS又具有主容错的优势,在集群中的节点挂点可以由其他的节点代替;HDFS一般不处理交互式处理,主要处理批处理,采用流式读写,可以“一次写入,多次读取”,当数据源生成一个数据集之后,这个数据集会被复制分发到不同的存储节点,可以响应各类数据分析任务的请求。
  HDFS更加看重的是数据的吞量,不太看重数据的访问速度;由于HDFS 的安全、可靠及高可用性,Hadoop可以采用的硬件要求不高,可以使用廉价的商用机器集群。在分布式计算中,HDFS是数据存储管理的基础。HDFS具有很多优点,像高获得性,高可靠性,高扩展性等。这些优点使得HDFS可以稳定的存储海量数据。
  HDFS是一个主/从(Master/Slave)的体系结构。我们从用户的角度来看,HDFS和传统的文件系统差不多,它可以对文件执行Create、Read、Update和Delete操作。因为HDFS是分布式存储,在HDFS体系结构中,有两种类型的结点,一类是元数据结点(NameNode);另一类是数据结点(DataNode)。DataNode用来存储实际的数据,NameNode(主控制服务器)是用来管理文件系统的元数据。在文件系统中,NameNode负责管理元数据,DataNode负责处理实际数据的存储。通过NameNode和DataNodes的交互,客户可以访问文件系统。客户端通过和NameNode相关联,可以获取文件的元数据。同时,通过直接和DataNode的交互,进行文件的输入和输出操作
  (一)NameNode
  Namenode 上保存着 HDFS 的名字空间。Namenode使用EditLog 的事务日志记录各种对文件系统的元数据的修改操作。事务日志(EditLog)被存储在本地操作系统的文件系统中。在FsImage 的文件中,存储着整个文件系统的名字空间,同样的FsImage也被存储在本地操作系统的文件系统中。整个文件系统的名字空间文件数据块映射(Blockmap)的映像都保存在内存中。由于对元数据结构的紧凑设计,可以在一个4G内存的 Namenode中能够处理大量的文件及目录。
  我们说的checkpoint(检查点)是这样一个过程,首先,Namenode启动,然后可以从硬盘中读取FsImage和Editlog,然后在将每个Editlog 中的事务作用在内存中的 FsImage 上,接着将新得到的这个FsImage从内存中保存到本地的硬盘,最后就可以删除原来的Editlog。就现在的实现而言,检查点仅仅发生在 Namenode 启动时,在将来会实现支持周期性的检查点。
  (二)DataNode
  Datanode 可以把HDFS 的数据以文件的形式存储在本地,Datanode不知道HDFS 文件的相关信息。HDFS的数据被划分成若干的数据块,Datanode将每个数据块分别存储在本地文件系统的一个独立文件中。Datanode 不会在一个目录下创建所有文件,Datanode采用试探的方法来确定每个目录中的文件数目,这样,在时机允许时创建相应的子目录。
  当我们启动一个Datanode时,Datanode将扫描所有的本地文件系统,这样会产生一个列表,在这个列表中将所有 HDFS 数据块和本地文件一一对应,然后会产生一个报告,并将报告然发送到 Namenode ,这个报告就是块状态报告。
  通常,我们可以这样来进行HDFS部署,将NameNode进行在一个专有的机器上,使用多个集群中的其他機器来运行一个DataNode;当然我们也可以在同一台机器上既运行NameNode又运行一个或多个DataNode。在一个集群中,只设计一个NameNode,这样的设计可以简化系统的架构。   (三)Hadoop的关键技术——MapReduce技术
  对于大量数据的操作处理,MapReduce采用了一种全新的思想,它首先分发给一个主节点,然后在将这些操作给下面的各个分节点,分节点协作完成。在处理结果时,先得到每个分节点的结果,最后在处理并得到最终的结果。我们可以这样说, MapReduce是分解相应任务并汇总最终结果。MapReduce有两个特别重要的函数,reduce和map,map的主要功能是将一个任务进行分解。
  而reduce的主要功能是汇总多任务的处理结果。这里,我们要特别注意,在采用 map和reduce处理数据时有这样的特性:我们可以将待处理的数据集进行分解,将其分解为多个较小的数据集,并且我们可以并行处理这些小的数据集。
  在上图中,我们可以看到,如何使用MapReduce来处理大数据集。在这个模型中,有两个非常重要的函数,分别是map和reduce函数。用户可以根据自己的实际需求来设计函数的功能及规则,用户可以根据自己定义的规则,输入一个对,可以转换成另外的一个或者一批对,并且输出。
  在Map处理时,首先将数据进行分割处理,并且划分成一个个固定大的小片段(splits),然后在将每一个片段进行处理并分解成一批对。针对每一个片段,创建一个相应的Map任务,这个任务可以处理自定义的map函数。然后以片段中的对为输入,通过运算并得到结果对,然后按Key1排序,并处理得到一个Value的列表,在得到一个新的元组。最后,重新分组,这些分组都有相应的Reduce任务。
  在Reduce处理时,Reduce首先接收Mapper的数据,然后整合并且排序,接着就去调用自定义函数reduce,然后在去处理相应的键值对,得到一个新的键值对,这样就会在在HDFS上。
  三、总结
  Hadoop是一个高度可扩展的开源数据管理软件,使我们轻松地获取、处理、交换任何数据。Hadoop是一个新型数据管理系统,它通过计算网络的处理能力将传统的非结构化领域或非关系型数据库联合起来。虽然它从传统大规模并行处理(MPP)数据库设计模式借鉴了大量经验,但Hadoop有几个关键的不同。
  首先,它是为低成本字节的经济而设计的。Hadoop几乎可以在任意硬件上运行,可以非常宽容地应对异构配置和不时发生的故障。
  第二,Hadoop非常容易扩展。Hadoop第一个版本就可以扩展到数千个节点,当前版本试验表明可以持续增加到上万个节点以上。使用主流的两插槽8核处理器,那就是80,000核的计算能力。
  第三,Hadoop可以非常灵活地存储和处理数据的类型。Hadoop可以接受任何格式、任何类型的数据,并具有一组功能丰富的API,用来读取和写入任何格式的数据。
  大部分组织刚刚开始他们的Hadoop旅程。他们用它来提炼大量的数据,为业务分析实践提供价值。有些人用它来采集和使用一些曾经废弃的数据,或者仅仅从已有系统中去采集比以前更多的数据。更先进的组织开始走向数据科学研究之路,从事大数据和传统输入源的探索。Hadoop几乎可以连接到传统企业数据栈的每一层,因此将占据数据中心的中心位置。它将在系统和用户之间交换数据并提供数据服务。在技术层面,Hadoop也就是做这些事情,但因为它为大众带来了超级计算能力,它也造成了商业的转变。它是开源软件,所创建的社区带来大规模并行处理,以及水平扩展所有在商品硬件上的存储。它不能替代系统,它迫使现有工具更加专业化,并占有流行的数据架构工具箱的一席之地。
  Hadoop 技术虽然已经被广泛应用,但是该技术无论在功能上还是在稳定性等方面还有待进一步完善,所以还在不断开发和不断升级维护的过程中,新的功能也在不断地被添加和引入,我们可以关注Apache Hadoop的官方网站了解最新的信息。相信在不久的将来,Hadoop 会被广泛应用于越来越多的领域,从而风靡全球。
  参考文献:
  [1] 洪沙,杨深远.云计算关键技术及基于Hadoop的云计算模型研究[J].软件导刊,2010(09).
  [2] 朱珠.基于Hadoop的海量数据处理模型研究和应用[D].北京:北京邮电大学,2008.
  [3] 刘智慧,张泉灵.大数据技术研究综述[J].浙江大学学报(工学版),2014(06).
  作者简介:王海波(1978-),女,漢族,黑龙江哈尔滨人,工学硕士,南通科技职业学院信息与智能工程学院教师,讲师,主要研究方向:软件技术、软件过程改进、数据库技术。
其他文献
解放区是个崭新的天地,其创作队伍由本土作家和外来作家组成.与男性作家不同,女性作家中,本土作家奇缺,几乎全是来自国统区的“外来户”.虽然有的已成共产党人,但其思想基本
国际化办学背景下,双语与全英文授课与本专业知识体系的结合对教师与学生提出了双重要求,以《服装商品企划与控制》课程为例,从理论教学与实践教学结合的视角,审视双语与全英
鲁迅曾酝酿过三部小说,一是历史小说,《杨贵妃》,一是反映红军战斗生活的小说,一是描写中国四代知识分子命运的小说。这三部作品虽因种种原因未能写成,但对这一现象的探讨,在
摘 要:利用叉车在料物装码作业中的强大功能及潜在优势,研发出一套配合叉车使用的辅助工具,实现针对表面积较大的铅丝网片等抢险料物的装运及码放作业,提高抢险料物出入库的装卸、码放速度,从而提高河务部门抢险料物储备及调度效率。  关键词:抢险;铅丝网片;装码;叉车  1 概述  1)研发背景。2012年8月24日,上级指令惠金河务局派出一支由30人组成的防汛抢险组,携带常用防汛抢险料物和工器具,赴内蒙古
学科简介消化内科具有一流就医环境、一流技术设备、一流诊疗团队。该科室人才梯队合理,拥有教授2人,副教授4人,主治医师4人,博士3人,硕士10人,副主任护师1人,其中赴日本进修学成归
方药:白花蛇舌草30g,败酱草30g,车前草30g,浙贝母10g,薏苡仁30g,白芥子10g,皂角刺15g,当归15g,香附子15g,白术15g,炒菜菔子10g,枣仁30g,炮穿山甲(冲服)5g,生姜3片,大枣3枚。
指纹方向图具有真实性、渐变性、抽象性的特点,因此在指纹自动识别系统中具有重要的研究价值[1]。指纹的方向图对指纹识别中的二值化、滤波增强、特征点提取和匹配有着重要的作用。本文对前人提出的算法提出了改进,实验证明改进后的算法更具有鲁棒性。
摘 要:基于学生主体的高校体育教学模式构建势在必行,它顺应了时代发展要求,是学生终身体育理念需要,优化体育教学需要,学生全面发展需要等。高校体育教学模式设计要创设学习情境,激发主体意识;强化体育活动设计,增强学生主体体验;优化教学内容,发展学生主体品质;改革教学评价,突出主体素质评价等,促进学生体育素质发展。  关键词:主体;高校;体育;教学模式  随着社会的快速发展,人们的体育需求剧增。高校体育
尿路结石在中医表现为砂淋、血淋、癃闭、石淋和腰痛等.这五大类病证虽有可能都为结石所致,但其病因、病原、病位、轻重不同,在治疗方面,不应仅仅是中医辨证论治,应作到辨证
性质功效 清热解毒,活血化瘀,豁痰醒神。主治病证各种病因(肝炎病毒、酒精、药物等)导致的急性、慢性肝功能衰竭。证见起病迅速,发热或高热,重度身目黄染及小便黄,色鲜明,迅速加深,精