APP下载

云平台下自适应调度算法的优化分析

2019-12-02柴炎郑海宾朱宏梁张宇天津工业大学计算机科学与技术学院

数码世界 2019年3期
关键词:任务调度调度情况

柴炎 郑海宾 朱宏梁 张宇 天津工业大学计算机科学与技术学院

1 云平台下作业调度概述

MapReduce作业的整个生命周期可分为以下六个步骤进行:①提交作业:当作业得到提交之后,HDFS需要对作业的分片元信息文件、配置文件等进行收集,在这个过程中主要由JobClient完成。当HDFS对相关文件收集成功时,会下发通知予以提醒。②作业初始化:在上述过程完成后,作业还需要进一步优化,这个阶段由作业调度模块作用,并交于JobInProgress进行运行记录。③任务调度与监控。JobTracker既控制任务调度又能完成监控,并能够及时反映出节点资源的使用状态。在作业调度的过程中资源转移可分为几个状态进行分类分析,一是任务失败的情况,JobTracker将对任务进行转移操作;二是存在资源闲置的情况下,JobTracker将依托于任务调度器的调度策略,以此对资源进行重新的分配;三是在某任务进行中进度明显低于其他作业的任务,这种情况下需要进行补救措施,即启动相同的任务,最终取最短时间作为最终结果。④任务运行环境准备:经TaskTracker的作用实现资源隔离,并对JVM进行启动操作。在这个过程中对于不同的TASK而言对应的JVM需要保持一定的独立,目的是为了避免出现任务干扰的情况发生。⑤执行任务:在上述步骤顺利进行后,任务将被执行。⑥作业完成:每个步骤完成时都会出现对应的标志予以提醒。

2 原有调度算法概述

2.1 计算能力调度算法

经过许多年的发展,FIFO已经相对比较完善,成为了众多计算机信息数据运算的重要方式。Hadoop中比较常用的就是FIFO,在这种技术诞生之初,应用的场景是一些日志挖掘等,展现出了极强的优势。在这种调度算法中,会有大量数据在不同的时间传入堆栈内,并且不同类型的数据的处理优先程度是具有一定差别的,因此内部的Job Tracker会根据这些实际信息决定相应的处理方式,完成调度工作。其中一种调度器能够对用户提交的作业进行初始化操作,这一过程中需要严格按照优先级进行,优先级是传入的信息中已经带有的,优先级越高,则处理时会自动排到处理序列前面。如果是优先级一致,就需要根据信息传入的时间进行选择。另外一种调度器的主要作用是为了能够确保调度顺序的合理性,并对实际作业信息处理的过程进行高效监听。相对来说,FIFO调度算法的作用是比较单一的,存在着一定的局限性,因此在面对大量的集群共享过程时,往往会存在调度性能无法有效发挥的情况。在一些特定情况下甚至会影响到整个处理工作的效果。

2.2 先进先出调度算法

先进先出调度算法能够很好的克服FIFO算法存在的一些缺陷,展现出自身独有的优势。能够使得多个处理作业过程同时进行,使得整个处理工作的效率大大提升,实现对相关资源的高效利用。但是目前这种调度算法的应用相对于FIFO来说比较少,因为这种调度算法存在着一些特定的缺陷,影响到其工作性能。比如说,先进先出调度算法会轻易陷入局部最优的陷阱,不能够在全局中找到合理的解。那么在实际应用中就无法得到有效应用。面对一些需要动态设置算法的应用场合,这种调度算法也不能够很好的适应,仅仅能够在静止状态发挥作用。在进行相应的参数设置时,需要对目标作业集群的一些基本信息进行提前了解,使得工作量大大增减,并且存在一些不确定性,已经在实际应用中展现出了其缺陷。

3 自适应调度算法的优化分析

3.1 自适应调度概述

关于自适应调度的基本概念,主要是建立在不同工作方式的优先级条件之下,对能力要求、资源要求、时间要求等进行动态的平衡。在这个过程中调度间隔需要依托于更优的任务序列以此保证各项工作的顺利进行。目前来看调度方式多种多样,自适应调度由于自身的特点所在,是最灵活的一种调度方式。

3.2 自适应调度算法概述

自适应调度算法的智能性质比较明显,能够根据一些设定的参数进行寻优。可以从作业提交、分类、过载判断以及作业完成时间进行入手研究。一般在作业提交时,就会有大量的自适应调度算法可以使用的信息,包括一些设置完成时间以及相应的其他参数等。过载模块一般都会使用节点特征。在等待作业的过程中,有可能会出现过载的情况,这样就使得进程受阻,因此就需要通过过载判断模块来对节点的资源情况进行了解,并作出相应的判断。关于作业完成实践,需要能够选择期望值最大的作业,最终根据实际情况进行作业分配。

3.3 自适应调度算法的优化

为了能够使自适应调度算法能够发挥出更好的作用,就需要对其进行优化。在实际优化过程中,最好是能够对需要处理的工作量进行预测,以此来根据作业的优先级设定来进行资源调配。在有些特定的情况下,会出现一些处理作业数据出错的情况,或者是因为作业量过大,因此无法在短时间内进行解决。调度机处理工作的效率有限,可能会被一些经过长时间处理但是没有解决的作业占用,那么就无法对其他优先级比较高的作业及时进行处理。因此在进行优化的过程中,也需要为作业设置更加合理的优先级。

4 结语

综上所述,现有调度算法在自适应性方面还存在一些不足之处,本文提出了一种自适应调度算法的优化框架,以期能够促进幼儿拓展辅助软硬件平台更顺畅的运行。在自适应调度算法进行优化之后响应时间明显缩短,且在动态变化时有着更强的适应性,大大提升了幼儿个性化挖掘的效率。

猜你喜欢

任务调度调度情况
《调度集中系统(CTC)/列车调度指挥系统(TDCS)维护手册》正式出版
“主谓一致”的十种情况
一种基于负载均衡的Kubernetes调度改进算法
虚拟机实时迁移调度算法
基于改进NSGA-Ⅱ算法的协同制造任务调度研究
基于时间负载均衡蚁群算法的云任务调度优化
新情况新举措
新情况新举措
云计算环境中任务调度策略
云计算中基于进化算法的任务调度策略