面向云计算的MapReduce并行编程模式的研究与应用

面向云计算的MapReduce并行编程模式的研究与应用

论文摘要

高性能计算机的发展促使了高效能程序设计环境的产生与发展,尤其是并行编程模式的发展。一方面,由于并行机体系结构的多样性给并行程序的开发带来了很多困难,因此怎样简化并行编程提高开发效率成为了一个关键问题。另一方面,面向云环境,如何提高并行计算的能力以实现在海量数据中获取有价值的信息也成为了互联网中极需解决的问题。针对上述两个问题,Google公司研发了一种新的并行编程模型MapReduce,它在高抽象层次上以易使用和易理解的方式来简单高效地解决并行计算问题。论文在研究并行编程模型及其具体的并行程序开发模式的基础上,紧紧围绕云计算及其关键技术MapReduce并行编程模式展开研究,通过对MapReduce的实现框架、执行过程及其实现平台进行分析与应用,取得了以下研究成果:1、针对MapReduce缺乏一个快速高效的标准或规则来调整和优化其作业执行性能的问题,本文提出了提高MapReduce性能的几种技巧,先描述问题出现的状况,再提出具体的解决方法,最后在集群上进行测试实验,且给出了使用技巧前后的对比性测试数据,可给MapReduce作业的开发者提供帮助。2、通过对MapReduce模型执行过程的分析,针对单源最短路径算法难以随着云计算的产生和发展而得以广泛应用,其搜索效率也难以提高的问题,本文设计和实现了一种基于MapReduce框架的单源最短路径算法的并行方法,并基于Hadoop平台集群环境进行了研究与实验,且分别对该问题的并行加速比、效率及可扩放性进行了详细地测试,结果表明,文中算法可以有效地找出整个图结构中的单源最短路径,且验证了算法性能的优越性。

论文目录

  • 摘要
  • Abstract
  • 插图索引
  • 附表索引
  • 第1章 绪论
  • 1.1 研究目的及意义
  • 1.2 研究内容
  • 1.3 本文工作
  • 1.4 本文组织结构
  • 第2章 重要知识及相关研究
  • 2.1 并行编程模型研究
  • 2.1.1 并行编程模型概述
  • 2.1.2 并行编程模型的现状及发展趋势
  • 2.2 并行程序开发模式
  • 2.2.1 基于共享存储的并行编程——OpenMP
  • 2.2.2 基于消息传递的并行编程
  • 2.2.3 OpenMP+MPI混合编程
  • 2.2.4 基于数据并行的并行编程——HPF
  • 2.2.5 并行库
  • 2.2.6 串行程序并行化
  • 2.3 云计算及其并行编程模型研究
  • 2.3.1 云计算概述
  • 2.3.2 云计算中并行编程模型的现状及发展趋势
  • 2.4 小结
  • 第3章 MapReduce并行编程模型
  • 3.1 MapReduce模型产生的背景
  • 3.2 MapReduce模型的原理
  • 3.3 Google的MapReduce实现框架
  • 3.4 MapReduce中的shuffle分析
  • 3.5 MapReduce模型的实现
  • 3.5.1 Hadoop
  • 3.5.2 Phoenix
  • 3.5.3 Mars
  • 3.5.4 HPMR
  • 3.6 提高MapReduce性能的几种技巧
  • 3.6.1 设置合适的map和reduce任务数量值
  • 3.6.2 选用最合适的Writable
  • 3.6.3 使用LZO压缩
  • 3.6.4 添加Combiner
  • 3.7 小结
  • 第4章 基于MapReduce的单源最短路径算法的研究与实现
  • 4.1 单源最短路径算法
  • 4.1.1 单源最短路径概述
  • 4.1.2 传统的解决方法
  • 4.2 相关定义描述
  • 4.3 关键问题的解决方法
  • 4.4 基于MapReduce的单源最短路径算法的设计与实现
  • 4.4.1 总体设计框架
  • 4.4.2 Map过程
  • 4.4.3 Reduce过程
  • 4.4.4 MapReduce的迭代过程
  • 4.5 小结
  • 第5章 基于MapReduce的单源最短路径算法的性能测试
  • 5.1 并行算法的性能评估
  • 5.1.1 加速比
  • 5.1.2 效率
  • 5.1.3 可扩放性
  • 5.2 实验环境
  • 5.3 实验结果及其分析
  • 5.3.1 加速比性能测试
  • 5.3.2 效率性能评测
  • 5.3.3 可扩放性性能评测
  • 5.4 小结
  • 第6章 结论
  • 6.1 本文总结
  • 6.2 未来工作及其展望
  • 参考文献
  • 致谢
  • 附录A 攻读硕士期间发表的论文
  • 附录B (攻读硕士期间参与的项目列表)
  • 相关论文文献

    • [1].多核并行编程技术在中文分词程序优化中的应用[J]. 计算机工程与设计 2010(24)
    • [2].并行编程,大势所趋[J]. 程序员 2010(05)
    • [3].一种跨平台的并行编程框架设计与实现[J]. 计算机工程 2014(08)
    • [4].组合CC++并行编程并行块研究[J]. 河南科技 2012(06)
    • [5].基于标记语言的跨平台并行编程框架设计[J]. 计算机系统应用 2020(10)
    • [6].基于对象的隐式并行编程众核体系结构研究[J]. 计算机工程与设计 2013(02)
    • [7].基于Linux并行编程模式的研究与实现[J]. 电脑开发与应用 2008(08)
    • [8].新书点评[J]. 电脑编程技巧与维护 2014(01)
    • [9].基于模式的CPPVM并行编程方法[J]. 计算机工程 2008(03)
    • [10].基于CMP多核集群的混合并行编程技术研究[J]. 计算机科学 2014(02)
    • [11].基于CMP系统的并行编程模式研究[J]. 计算机技术与发展 2014(07)
    • [12].Win32平台基于通信的多核并行编程方法[J]. 计算机应用与软件 2014(04)
    • [13].Altera发布面向FPGA的OpenCL计划[J]. 电视技术 2011(23)
    • [14].一种基于循环并行模式的多核优化方法[J]. 厦门大学学报(自然科学版) 2010(06)
    • [15].MPJ并行编程框架的实现及安装配置[J]. 计算机与现代化 2009(08)
    • [16].Altera发布面向FPGA的OpenCL计划[J]. 单片机与嵌入式系统应用 2012(01)
    • [17].多核SMP集群混合并行编程技术的研究[J]. 微型机与应用 2017(04)
    • [18].MIC商用并行编程性能优化分析[J]. 深圳信息职业技术学院学报 2013(01)
    • [19].UPPA:面向异构众核系统的统一并行编程架构[J]. 计算机学报 2020(06)
    • [20].CUDA平台下多核GPU高性能并行编程研究[J]. 河南机电高等专科学校学报 2011(01)
    • [21].共享内存并行编程最优同步方法的研究[J]. 科学技术与工程 2015(08)
    • [22].消除有扰射频:基于LabVIEW和NI USRP进行射频/通信物理层研究[J]. 国外电子测量技术 2012(09)
    • [23].3D_EW在MIC并行编程中的移植与实现研究[J]. 实验室研究与探索 2017(04)
    • [24].多核SMP集群Hybrid并行编程模式的研究与分析[J]. 电子技术 2016(02)
    • [25].多核时代下的并行编程架构[J]. 国外电子测量技术 2009(08)
    • [26].多核时代下的并行编程架构[J]. 电子测试 2009(10)
    • [27].基于Python的并行编程技术在批量气象规范报表入库处理中的应用[J]. 软件 2018(07)
    • [28].多核多线程并行编程模型研究及应用[J]. 阴山学刊(自然科学) 2012(02)
    • [29].C语言开发者使用NI Lab Windows/CVI 2013提升硬件速度[J]. 国外电子测量技术 2013(10)
    • [30].MPI并行编程及集群构建[J]. 内江科技 2012(02)

    标签:;  ;  ;  

    面向云计算的MapReduce并行编程模式的研究与应用
    下载Doc文档

    猜你喜欢