Hadoop jar命令和作业命令之间的区别

时间:2013-03-12 18:45:47

标签: hadoop mapreduce

两个命令“jar”和“job”之间有什么区别。

* GT;以下是我的理解。

  

命令“jar”可用于在本地运行MR作业。

     

“hadoop job”已弃用并用于向作业提交作业   簇。另一种方法是mapred命令。

     

jar命令也会在同一节点中本地运行MR作业   我们执行命令的地方而不是其他任何地方   簇。如果我们要提交一份可以运行某些非工作的工作   集群上的确定性节点。*

如果我的理解是正确的,请告知我,如果不是,那么差异究竟是什么。

由于

1 个答案:

答案 0 :(得分:1)

他们两者完全不同,我认为不具有可比性。两者共存并具有单独的功能,并且没有一个被弃用的AFAIK。

job 不用于向集群提交作业,而是用于获取已经运行或正在运行的作业的信息,还用于终止运行工作甚至杀死一项特定任务。

虽然 jar 仅用于执行自定义mapred jar,例如:

$ bin/hadoop jar /usr/joe/wordcount.jar org.myorg.WordCount /usr/joe/wordcount/input /usr/joe/wordcount/output

hadoop jar

运行一个jar文件。用户可以将Map Reduce代码捆绑在jar文件中,并使用此命令执行它。

用法:hadoop jar [mainClass] args ...

hadoop job

与Map Reduce Jobs交互的命令。

*用法:hadoop job [GENERIC_OPTIONS] [-submit] | [-status] | [-counter] | [-kill] | [-events<# - of-events>] | [-history [all]] | [-list [all]] | [-kill-task] | [-fail-task] | [-set-priority] *

有关详细信息,请阅读here