论文部分内容阅读
云计算是随着大规模计算机、个人计算机、互联网的发展而产生的第四次IT产业革命,谷歌首先定义并发展了云计算。而云计算的开源模型Hadoop,是一种基于Java的,通过运行可分布式的密集型应用,来分析和处理大数据的开源分布式计算平台。Hadoop平台有很多关键技术,任务调度算法是其中很重要的一个,Hadoop平台的运行性能和资源分配利用都与该技术有密切关系。本文期望通过建立基于烟花算法的多目标任务调度模型,改善系统自带的三种调度算法的弊端,如考虑到作业切换的时间花销,在面对大量短作业时,系统的处理速度并不理想。本文首先阐述了Hadoop平台的系统知识,详细介绍了Hadoop技术,其中包括Hadoop的两大核心技术HDFS和MapReduce,并深入分析了Hadoop系统常见的三种任务调度算法的优缺点。然后,本文以减少大规模短作业的处理时间,保证系统负载均衡的要求为目的,改进Hadoop自带的任务调度策略,提出了采用烟花算法解决多目标任务调度的方案,避免了频繁切换短作业所产生的时间开销。同时,应用MapReduce并行编程模型,改进现有串行烟花算法,实现了基于烟花算法的多目标任务调度的并行化,大大提高了平台的运行效率。从实验结果可以看出,烟花算法的串行实验得到最优适应度值的区间更小,而且在种群规模不断扩大时,烟花算法的执行时间没有陡然增加,明显优于PSO算法和GA算法。并行烟花算法的实验表明,随着种群规模的不断扩大,运行时间并未随之增加,并且稳定在某个特定的值,此时集群的优势表现的十分明显,更适合进行海量数据的处理。在测试集群的加速比方面,作业的执行时间随着集群节点的增加而降低,可以显著提高系统的处理能力。