在主要火花作业中启动多个火花作业

时间:2016-12-21 11:51:07

标签: hadoop apache-spark

在主要的火花作业中产生多个火花作业是否可以,我在纱线集群上发布的主要火花作业的驱动程序将进行一些预处理,并且基于它,它需要在纱线集群上启动多个火花作业。不确定这种模式是否正确。

主要火花作业将启动其他类似于在Spark驱动程序中调用多个spark-submit的spark-job。 这些用于新作业的衍生线程将是完全不同的组件,因此无法使用spark操作实现这些。enter image description here

请分享您的想法。

示例代码如下所示,以便更好地理解..

Object Mainsparkjob {

main(...){

val sc=new SparkContext(..)

Fetch from hive..using hivecontext
Fetch from hbase

//spawning multiple Futures..
Val future1=Future{
Val sparkjob= SparkLauncher(...).launch; spark.waitFor
}

Similarly, future2 to futureN.

future1.onComplete{...}
}
}//end of main spark job

1 个答案:

答案 0 :(得分:0)

使用像oozie这样的工作流程管理工具来协调作业中的这种依赖关系。

Oozie有火花动作,她会采取行动,给予行动,Java动作,distcp,电子邮件一切都在那里可用。

所以我们可以使用oozie

在作业之间设置一个很好的正派