我们可以从火花本身提交火花作业(可能来自另一个火花计划)吗?

时间:2017-05-24 06:57:36

标签: apache-spark

有人可以在我的一次采访中澄清我提出的问题吗?这可能是问题本身是错误的,我不确定。但是,我到处搜索,找不到与此问题相关的任何内容。问题是:

  

我们可以从另一个火花计划中运行火花作业吗?

2 个答案:

答案 0 :(得分:0)

是的,你是对的,没有任何意义。就像我们可以通过我们的驱动程序运行我们的应用程序一样,但就像我们使用spark启动器https://github.com/phalodi/Spark-launcher从任何应用程序运行它一样。除了我们不能在rdd闭包中运行应用程序,因为它们在工作节点上运行,所以它不起作用。

答案 1 :(得分:0)

  

我们可以从另一个火花计划中运行火花作业吗?

我专注于another部分问题,因为以下内容适用于任何 Spark计划:

  

我们可以从任何Spark程序运行Spark作业吗?

这意味着要么有后续问题,要么对你被问到的问题进行一些介绍。

如果我是你并且听到了这个问题,我会说"是的,确实!"

Spark应用程序换句话说就是Spark作业的启动程序,拥有Spark应用程序的唯一原因是顺序或并行运行Spark作业。

任何Spark应用程序都会执行此操作,仅此而已。

Spark应用程序是一个Scala应用程序(当Scala是编程语言时),因此可以从另一个Spark程序运行一个Spark程序(在一般意义上它是有意义的,因为可能存在冲突,我放在一边)每个JVM多个SparkContext

鉴于其他Spark应用程序是一个单独的可执行jar,您可以使用Scala中的Process API(与任何其他应用程序一样)启动它:

  

scala.sys.process 此包处理外部进程的执行。