论文部分内容阅读
随着云计算技术近几年的迅速发展,Hadoop这种处理大规模密集型数据的云计算平台受到国内外大型IT公司、社交网络、全球各大通信运营商等的广泛关注及应用。Hadoop系统可部署在廉价的普通服务器上,能高效并行处理大规模数据集。Hadoop平台有可能由成千上万个节点组成,在这些节点中采用什么样的任务调度技术协同处理各个任务显得尤为重要。一个好的任务调度策略不但能够很大程度上提高任务响应时间和系统吞吐率,也能提高整个集群资源的利用率。因此,任务调度技术的研究对云计算平台的发展具有重要意义。本文面向云计算平台Hadoop的任务调度技术进行了如下研究:首先,研究Hadoop平台的基本架构,Hadoop主要由数据存储结构HDFS和任务并行处理模型MapReduce两个部分组成。在其架构的基础上分析了Hadoop的数据存储特性、任务处理流程以及数据流程。详细阐述了Hadoop平台的任务调度技术发展现状,并分析了现有Hadoop平台采用的任务调度算法的特点和局限性。其次,根据Hadoop数据的存储特性,提出了基于数据局部性对LATE算法的改进策略,在Hadoop平台中分机架考虑任务推测执行的调度问题,选择备份任务推测执行时,优先选择数据存储在请求处理节点上的任务,以及节点所在机架上的任务推测执行;如果没有数据存储在本节点或者本机架的任务需要推测执行,再考虑在其它机架上查找需要推测执行的任务。再次,利用统计学概率论解决任务等待时间过长影响工作响应时间的情况。根据稀有事件发生概率模型,综合考虑数据局部性优化问题和任务等待本节点或者本机架处理的时间过长反而影响任务响应时间的问题。最后,在CloudSim仿真平台上模拟Hadoop架构,对不同的任务类型,设定不同的参数值进行仿真实验,分析算法在提高任务本地化处理能力、减少工作响应时间以及优化系统吞吐率等方面较其他算法具有明显优势,基于数据局部性的改进算法解决了Hadoop平台任务调度技术有关数据局部性问题的性能瓶颈。