Hadoop集群环境下调度算法的研究与改进

来源 :南京航空航天大学 | 被引量 : 0次 | 上传用户:chenzeqian
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着计算机网络的发展,应用的不断深入,云计算被提出,并成为当今计算机领域最热的研究领域之一。Hadoop是一种云计算框架,适用于大规模数据集计算。在Hadoop中,用户提交的作业被分割为若干个相互独立的任务,然后由调度器调度至计算节点上并行执行。调度问题一直是并行计算领域中最重要的问题之一,Hadoop应用环境日渐复杂,传统的调度算法也受到挑战。公平调度算法由于解决了多用户环境下共享集群资源的问题,目前被Hadoop所采用。然而,在基于Hadoop框架的云计算中,当计算资源和数据资源在不同的物理位置时将产生数据迁移问题,增加网络I/O,产生所谓的“数据化本地化”问题。为解决该问题,研究者提出了延迟调度算法,允许就绪任务等待一段时间,直到集群中某一具有该任务所需要数据资源的节点向调度器索取任务,才将任务调度到该节点执行。本文深入研究了延迟调度算法,在分析延迟调度算法不足之处的基础上,针对其中存在的问题,提出两个改进方案,并以实验验证了所改进的算法。具体工作如下:1)研究如何合理设置延迟时间间隔。在实际应用中,延迟时间间隔往往是一个经验值,设置过长或过短都可能影响系统性能与作业执行效率。本文在分析了作业待处理数据在文件系统中的分布情况如何影响作业本地化调度的基础上,引入参数用户期望本地化概率,推导出等待时间的计算公式。该公式区分不同的作业,设置不同的等待时间。据此,用户可以根据期望本地化概率这一参数来调控作业预期的本地化程度。对上述方法,进行实验验证,实验结果表明:通过公式计算出的延迟时间能够使得作业达到用户预期的本地化水平。2)研究如何合理设置目标计算节点。延迟调度算法以本地化调度为目标,则数据的位置决定了任务的目标计算节点;如果某作业的待处理数据集中在某个节点上,将出现多个任务在同一节点上运行,导致作业并行化程度很差。本文在保留延迟调度的基础上,提出延迟-容量调度算法,允许部分任务选择非本地化节点作为原延迟调度算法中任务的目标计算节点,提高作业的响应时间与增加作业的并行程度。对此算法,本文修改Hadoop源代码重新编译,并搭建测试环境进行了实验,实验对比分析结果表明:改进后的算法在执行效率和并行效果优于原延迟调度算法。3)在电网监控系统中,应用上述调度算法进行公式并行计算。首先分析电网监控系统中公式计算的特点,然后阐述如何采用MapReduce编程模型实现公式计算的并行处理,以及如何在其过程中运用论文所提出的两种调度算法进行任务调度。最后,对Hadoop集群环境和传统的集群环境电网监控系统公式计算结果进行了对比分析,结果表明,本文所采用的方法在完成时间和负载均衡上都更优。
其他文献
单处理器的嵌入式系统已经不能满足用户的需求,多处理器系统已经成为未来嵌入式系统的主要发展趋势。现场可编程门阵列(FPGA)的出现给多处理器系统的设计带来了很多方便。相对于
低密度校验码(Low-Density Parity-Check codes)是目前最接近香农限的一类纠错码。由于其良好的距离特性、低译码复杂度,已成为当今信道编码领域研究的热点之一。随着研究的不
本文主要研究了数据包分类算法,以及数据包分类在入侵检测工具Snort和基于状态包分类的数据流检测中的应用。网络技术的飞速发展,给人们的社会生活带来很大便利。然而,网络用户
语音作为人们交流和表达情感的一种重要媒介,在日常生活中却总是受到噪声的干扰,因此我们需要对混入背景噪声的干净语音进行语音增强。语音增强算法的最终目标就是对背景噪声
软件缺陷是软件的固有属性,其主要危害是影响软件的可靠性、增加开发成本以及延长软件开发周期。软件测试可以及时发现软件错误,提高软件系统可靠性。而准确地预测软件缺陷,对改
RESTful Web服务作为一种轻量级的Web服务实现,近年来在云计算环境中得到了广泛的应用。然而基于HTTP协议的RESTful Web服务无法支持异步交互,在多参与者业务流程中执行效率不
随着全球信息化和智能化的推进,人工智能已经渗透到各行各业,模糊推理成为其中非常活跃的研究方向之一。围绕经典模糊规则和模糊推理算法的研究已有许多成果,但经典模糊规则不能
Flash动画作为一种重要的动画形式通过网络和其它各种媒体已经越来越多的深入到人们的生活当中。但是通过分析国内外大量Flash动画作品,发现Flash动画作品的设计和制作技术良
随着社会的进步,互联网逐渐成为人们表达舆论的又一个重要平台。网络具有传播迅速、用户匿名等诸多特性,由于这些特点,一方面,网络对社会舆论起到了很好的监督作用,但另一方
P3P隐私偏好平台主要被用于在用户访问网站时保护用户的隐私,它提供了基于XML的策略描述语言,使得网站可以以一种机器可读的方式描述它们的数据收集的范围以及使用的方式。但是