spark如何与集群配置一起使用?

时间:2018-07-23 01:38:01

标签: apache-spark

假设我有以下Java代码

SparkConf sparkConf = new SparkConf().setAppName("myApp");
JavaSparkContext sparkContext = new JavaSparkContext(sparkConf);`

JavaRDD<A> firstRDD = sparkContext.parallelize(B, 2);
 JavaRDD<A> secondRDD = firstRDD.map(runSomethingAndReturnSomething());


A objectA = secondRDD.collect();
doSomethingWithA(objectA)

我想在集群模式下运行代码,所以我使用spark-submit,启动一个主服务器和一个从服务器。

据我了解(如果我错了,请纠正我),这种情况应该发生:

  1. 在驱动程序(主控)中启动spark上下文。
  2. 我对主人说,我想在两个分区中并行使用B对象。
  3. 主服务器会将命令(地图)发送给工人,但他们仍然不会执行。
  4. 最后,我要进行收集,工作人员将完成转换并在完成后启动map命令,并将结果发送给主数据库。
  5. 我用母版中收集的结果来做点事情。

问题在于,基本上收集是在从属节点而不是在主节点中完成的,为什么会这样?

0 个答案:

没有答案