2015-04-16 59 views
0

我有一个运行Hadoop 2.6的hadoop群集。我想同时提交多个作业。我想知道是否应该简单地提交多个作业,并让群集处理其余作业,或者我应该将它们作为纱线应用程序编写。事实上,我对Yarn应用程序开发并不十分熟悉,并且确切知道它与常规Hadoop应用程序的不同之处。如何将多个作业提交到hadoop群集

+0

你需要执行哪种工作? Mapreduce,Hive等? – InfamousCoconut

+0

他们只是mapreduce工作 –

回答

0

您可以使用正在分叉的mapreduce作业定义oozie工作流程。以下是来自apache oozie文档的示例。

<workflow-app name="sample-wf" xmlns="uri:oozie:workflow:0.1"> 
    ... 
    <fork name="forking"> 
     <path start="firstparalleljob"/> 
     <path start="secondparalleljob"/> 
    </fork> 
    <action name="firstparallejob"> 
     <map-reduce> 
      <job-tracker>foo:9001</job-tracker> 
      <name-node>bar:9000</name-node> 
      <job-xml>job1.xml</job-xml> 
     </map-reduce> 
     <ok to="joining"/> 
     <error to="kill"/> 
    </action> 
    <action name="secondparalleljob"> 
     <map-reduce> 
      <job-tracker>foo:9001</job-tracker> 
      <name-node>bar:9000</name-node> 
      <job-xml>job2.xml</job-xml> 
     </map-reduce> 
     <ok to="joining"/> 
     <error to="kill"/> 
    </action> 
    <join name="joining" to="nextaction"/> 
    ... 
</workflow-app> 
+0

谢谢,那是我最初的想法。但纱线呢?我可以将它们作为纱线应用程序提交吗?他会有什么不同? –

1

您可以使用MR1和YARN运行MR作业。 YARN has nothing to do with job parallelism.这只是一个运行各种工作的框架。

使用oozie工作流或shell脚本并行运行作业。

相关问题