论文部分内容阅读
随着Internet技术的高速发展,我们已经进入大数据时代,几乎所有的事物都与数据有关。如今,各种应用会使每个月都产生 TB级别甚至 PB级别的数据,与此同时,越来越多的需求使每天需要处理几 PB、几百 PB甚至 EB级的数据。Apache开发的云计算平台 Hadoop是基于 Google的云平台的开源实现。Hadoop平台屏蔽了系统分布式处理的细节,通过使用MapReduce编程框架,开发人员只需关注业务的实现过程,而分布式的处理过程由 Hadoop底层自动完成;Hadoop可以大大节省企业 IT设施成本,因为它可以在普通 PC组成的集群上获得良好的运行效果;同时,开源的 Hadoop使中小型企业以及个人开发者拥有分布式计算的能力。虽然得到了广泛的支持,开源的 Hadoop仍是一个不断发展中的平台,在实际应用中,还存在着很多问题。 本文首先对 Hadoop平台的产生背景进行介绍,然后深入的研究了 Hadoop平台的框架:Hadoop分布式文件系统(HDFS)和MapReduce并行编程框架,对 Hadoop平台的作业调度算法进行深入研究,针对特定作业、特定环境下,存在的相关问题,对调度算法进行了改进,具体工作如下: (1)通过研究公平调度算法的处理过程,发现在处理大量非本地任务时,易产生热点问题,提出一种基于热点预测的公平调度算法。该算法对潜在热点进行预测,避免产生实际热点,从而提高了对不同作业的处理效率。 (2)考虑到用户对作业处理的时间要求,提出一种基于截止时间限制的动态调度算法(DCDS)。该算法实时监控作业运行状况,并对作业运行时间进行动态估算,从而确定作业优先级;对于时间紧迫的作业,我们引入了抢占策略,经试验测试该算法提高了系统资源的利用率和吞吐量。