hadoop的任务调度系统

当hadoop中的任务数量多了以后,就须要经过指定一些策略使得任务调度更快。hadoop中的任务调度与操做系统中的任务调度有些相似,也有许多方法提供使用。服务器

在指定调度策略以前,须要对一些指标进行研究:app

  • mapper的数量

mapper须要运行的时间?时间长度取决于使用的输入格式。oop

  • reducer的数量

为了达到更高的性能,集群中的reducer数量应该略小于reducer的任务槽数。性能

  • combiner

做业是否充分利用combiner来减小经过shuffle传输的数据量操作系统

  • 中间值的压缩

对map输出进行压缩几乎总能使做业执行的更快内存

  • 调整shuffle

shuffle过程能够对一些内存管理的参数进行调整,以弥补性能的不足hadoop

如今有一些第三方调度系统能够提供给开发者使用。开发

  • Apache Ooize

客户端将一个当即或稍后执行的工做流定义到ooize服务器中。在ooize中工做流是一个由动做(action)节点和控制流节点组成的DAG。工作流

动做节点执行工做流任务。当工做流结束时,Oozie经过发送一个HTTP的回调向客户端通知工做流的状态。还能够在每次进入工做流或退出一个动做节点时接收到回调。内存管理

相关文章
相关标签/搜索