基于粒子群优化算法的Hadoop调度算法研究
2015-03-18刘盼红
河北工程大学学报(自然科学版) 2015年1期
刘盼红
(河北工程大学信息与电气工程学院,河北邯郸056038)
近年来,随着互联网、物联网、移动网络、传感网络等各种新技术在各行各业的渗透式应用,数据呈现爆炸式的增长,对海量数据的处理与分析被称为“大数据”[1]。Hadoop,以一种可靠、高效、可伸缩的方式进行数据处理,为处理海量数据提供了一个很好的解决方案[2]。任务调度器是Hadoop中最核心的组件,负责整个集群资源的管理和分配。因此调度算法的好坏直接影响到Hadoop平台的整体性能和集群的资源利用率[3]。Hadoop自带的调度算法在处理混合作业时没有考虑资源负载均衡的问题,在调度各节点任务时,没有达到一种最优的状态。基于以上问题,文中考虑到混合作业的特点提出了一种基于粒子群优化算法的调度算法,以便可以更高效全面的进行任务调度,平衡资源负载,减少数据处理时间,提高平台性能。
1 Hadoop任务调度
1.1 Hadoop原有的任务调度算法
默认调度器FIFO。FIFO将所有用户提交的作业都放到一个队列中,并将作业按照优先级高低和提交的先后顺序进行排序,然后按此队列的顺序执行作业。优点是实现非常简单、调度过程快;缺点是资源的利用率不高。
计算能力调度算法Capacity Schedule。Capacity Schedule[4]采用多个队列,每个队列分配一定的系统容量,空闲资源可以动态分配给负荷重的队列,支持作业优先级;优点是支持多作业并行执行,提高资源利用率,动态调整资源分配,提高作业执行效率;缺点是用户需要了解大量系统信息,才能设置和选择队列。……
登录APP查看全文
