论文部分内容阅读
Hadoop是大数据最重要的处理框架之一,其核心包括MapReduce和HDFS两部分。MapReduce是负责数据处理的框架,通过对输入数据进行拆分、组合可对其进行高效的分析处理。HDFS负责数据的存储管理,它能够在低成本的计算机上运行,并通过检测和应对硬件故障来实现系统的容错性能。在同构的Hadoop集群中,所有节点的性能基本一致,Hadoop在执行任务时能够获得较好的性能。但在不均衡环境中,由于集群中的节点在数据的处理能力、磁盘的使用情况、不同文件的访问频率等方面的差异性,会导致Hadoop集群出现负载均衡的问题。这个问题主要涉及两方面,一个是MapReduce的负载均衡问题,另一个是HDFS的数据放置负载均衡问题。针对这两个问题,本文分别进行了深入研究,并提出了解决相应问题的关键技术。针对MapReduce的负载均衡问题,本文提出了基于节点性能的MapReduce负载均衡算法(LBNP, ALoadBalanceAlgorithmBasedonNodesPerformanceinHadoopCluster).该算法以节点性能评价模型为核心,对Hadoop集群中各节点的计算能力进行评估,并依据性能估值在Reduce阶段对输入数据进行合理分配。针对HDFS数据放置的负载均衡问题,本文提出了一种新型节点负载评估模型,并以此模型为基础提出了一种新的备份数据块放置策略。其中,节点负载评估模型以不均衡环境下集群中的节点性能、磁盘使用率、文件访问频率等因素为衡量因子。新的备份数据块放置策略优先选取集群中负载较小的节点为数据块备份节点,从而达到提升集群的负载均衡程度、提高集群的工作效率的目的。最后,本文通过对新的算法与策略的全面实验仿真,并与原始的Hadoop框架进行比较,证明了该算法对集群负载均衡的有效性和在执行MapReduce任务时的高效性。