在主要的火花作业中产生多个火花作业是否可以,我在纱线集群上发布的主要火花作业的驱动程序将进行一些预处理,并且基于它,它需要在纱线集群上启动多个火花作业。不确定这种模式是否正确。
主要火花作业将启动其他类似于在Spark驱动程序中调用多个spark-submit的spark-job。 这些用于新作业的衍生线程将是完全不同的组件,因此无法使用spark操作实现这些。
请分享您的想法。
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
答案 0 :(得分:0)
使用像oozie这样的工作流程管理工具来协调作业中的这种依赖关系。
Oozie有火花动作,她会采取行动,给予行动,Java动作,distcp,电子邮件一切都在那里可用。
所以我们可以使用oozie
在作业之间设置一个很好的正派