如何在hadoop中调度作业



我是hadoop的新手,我写了一些作业并将它们导出为jar文件。我可以使用hadoop jar命令运行它们,我想每隔一小时运行这些作业。我该怎么做呢?

Hadoop本身没有像您建议的那样调度作业的方法。因此,您有两个主要选择,Java的Time和调度功能,或者从操作系统运行作业,我建议使用Cron。我个人会使用cron来完成这项工作,它简单且非常灵活,并且在大多数服务器上默认安装。还有很多教程。

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

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

如果你想把它留在java本身,我建议你看看这个问题,它有细节和代码,如何安排任务开始每小时

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

除了已经提到的Oozie,你可能想看看Falcon。

然而,根据我的经验,一个更简单的方法是尝试使用您的CI系统来避免向堆栈中添加新系统,例如Jenkins

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

相关内容

  • 没有找到相关文章

最新更新