如何在hadoop中安排工作

时间:2013-05-06 18:08:37

标签: hadoop mapreduce job-scheduling

我是hadoop的新手,我写了很少的工作并将它们导出为jar文件。我能够使用hadoop jar命令运行它们,我想每隔一小时运行一次这些作业。我该怎么做呢?提前谢谢。

4 个答案:

答案 0 :(得分:3)

Hadoop本身无法按照您的建议安排工作。因此,您有两个主要选择,Java的时间和日程安排功能,或者从操作系统运行作业,我建议Cron。我本人会使用cron来做到这一点,它简单而且非常灵活,并且默认安装在大多数服务器上。还有很多教程。

Cron示例在每小时的第一分钟运行。

0 * * * *  /bin/hadoop jar myJar.jar

如果您想将其保留在java本身内部,我建议您查看这个问题,其中包含详细信息和代码How to schedule task for start of every hour

答案 1 :(得分:3)

你可以通过编写一个cron或一些脚本来实现这一点。但在我看来,更好的方法是使用一些调度程序,如Oozie

答案 2 :(得分:0)

除了已经提到的Oozie之外,您可能还想看看Falcon

但是,根据自己的经验,更简单的方法是尝试使用CI系统来避免向堆栈中添加新系统,例如Jenkins

答案 3 :(得分:0)

为CRON&添加另一个选项Oozie,Quartz Scheduler