论文部分内容阅读
云计算是一种新型的商业模式和计算模式,它通过对计算资源、存储资源、软件服务的商品化处理,以更具可靠、廉价、高速的方式提供给用户使用,实现资源拥有者与使用者的分离。大数据是使用通用软件工具来捕捉,管理和数据处理时间超过容许时间的数据集,它具有容量大、种类多、产生速度快等特点。云计算平台为大数据分析提供了硬件基础,大数据分析也为云计算的发展提供了应用需求。分析即为服务的理念就是云计算与大数据分析发展融合的产物。但通常的情况下,云计算平台是一个由许多性能差异较大的计算节点组成的异构集群。这使得云环境常出现负载不均衡的现象,这严重影响了云计算系统的整体性能,因此对异构云平台中的任务调度技术进行研究就显得格外重要。通过学习研究,本文首先对云计算与大数据的相关概念与特点进行了阐述;对开源云平台Hadoop的关键技术一-MapReduce编程模型、分布式文件系统HDFS做了深入研究,并分析比较了现在较为流行的几种并行编程模式。然后对Hadoop平台下的三种作业调度算法:先入先出调度算法(FIFO)、公平份额调度算法(Fair Scheduler)和计算能力调度算法(Capacity Scheduler)的设计思路和实现方法进行研究,在此基础上,设计一种新的Hadoop作业调度算法,命名为基于资源感知的调度算法(The Scheduler Algorithm Based on Resource-Aware),以下简称为资源感知调度器Resource-Aware Scheduler,简写为RAs。本文设计的资源感知调度算法是综合考虑计算节点性能的异构性、作业处理数据量的差异性、任务的多样性来设计的,在此过程中我们引入合理度的概念来刻画任务分配方案,用它来权衡计算节点、作业数据量、任务多样性之间的关系,实现云计算平台的运行效率与资源合理分配的整体效果最大化。因此具有最大分配合理度的方案即为最好的任务分配策略。最终实现不同计算节点的差异使用、不同类型作业的差别服务、不同任务的差异执行,从而提高系统的整体响应时间和系统资源的利用率。