基于MapReduce的科学计算应用性能分析与优化
发布时间:2020-05-17 01:27
【摘要】: Google设计提出的MapReduce并行编程模型有效地把并行程序的编写者从一些琐碎的编程困难中解放出来。程序员无需为并行程序的任务调度、资源管理以及容错性方面花费过多的精力。如今此模型被广泛地运用于众多海量数据并行处理应用中。由于此框架把并行应用的编写者从并行处理、容错处理以及节点负载平衡此类繁琐工作中解放出来,它极大的提高了集群中并行数据处理程序开发的效率 科学计算应用,作为一类具有实用意义的应用一直没有能够移植于这个成功的MapReduce平台上。本文选取SPLASH-2测试集中两个具有代表意义的科学计算应用Water和基数排序进行研究,把它们移植到两个开源的MapReduce框架Hadoop和Phoenix上,分别部署于集群环境和多核平台。通过这样来分析MapReduce平台上运行此类应用时遇到的性能瓶颈,找出其对应的框架设计问题。为两个不同平台上的实现,尤其为集群平台上的,更做了许多具有针对型的测试和分析。 从实验的结果中我们发现,在多核平台上,内存空间限制了应用的规模。而集群上,由于框架设计的原则和科学计算应用的行为特征不符合,缺乏底层存储系统的支持,导致了在数据变型、传输方面带来了额外的运行开销,从而使得运行整体时间大大拉长。当输入数据量增长时,运行速度急剧下降。原有的MapReduce接口也不能直观的运用于开发此类应用,在这些应用移植到MapReduce过程中给程序员带来了额外的工作量。 本文针对以上问题,提出一套可行的优化方案。针对MapReduce框架,本文提出要增加编程接口类型,以支持科学计算的需求。同时为了避免多个迭代中的数据冗余传输,要在调度过程中注意,尽量分配处理相同数据的任务到同一个计算节点。而在集群MapReduce实现方面,底层通用的文件系统无法适应科学计算应用的需要,应该增加对特殊数据结构的底层支持。通过这些优化措施,能够使得科学计算应用高效地运行于MapReduce这个广泛被接受的分布式平台之上。
【学位授予单位】:复旦大学
【学位级别】:硕士
【学位授予年份】:2010
【分类号】:TP338.6
本文编号:2667686
【学位授予单位】:复旦大学
【学位级别】:硕士
【学位授予年份】:2010
【分类号】:TP338.6
【引证文献】
相关硕士学位论文 前3条
1 薛正元;基于云计算技术的邮件过滤机制研究与实现[D];郑州大学;2012年
2 付天新;基于MapReduce模型的生态遥感参数反演并行化方法与实现[D];兰州交通大学;2012年
3 曹旭;Hadoop平台下海量日志数据处理模型的研究及改进[D];浙江理工大学;2013年
,本文编号:2667686
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2667686.html