“jar”和“job”这两个命令有什么区别。
*> 以下是我的理解。
命令“jar”可用于在本地运行 MR 作业。
“hadoop 作业”已被弃用,用于向集群提交作业。替代方法是 mapred 命令。
此外,jar 命令将在我们执行命令的同一节点本地运行 MR 作业,而不是集群上的其他任何地方。如果我们要提交一个可以在集群上某个非确定性节点上运行的作业。*
让我知道我的理解是否正确,如果不正确,究竟有什么区别。
谢谢
两者完全不同,我认为没有可比性。两者共存并具有单独的功能,并且没有一个被弃用 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 文件。用户可以将他们的 Map Reduce 代码捆绑在一个 jar 文件中并使用此命令执行它。
用法:hadoop jar [mainClass] args...
hadoop 作业
与 Map Reduce 作业交互的命令。
*用法:hadoop 作业 [GENERIC_OPTIONS] [-submit ] | [-状态] | [-计数器] | [-杀] | [-events <#-of-events>] | [-历史[全部]] | [-list [全部]] | [-杀任务] | [-失败任务] | [-设置优先级]*
欲了解更多信息,请阅读此处。