2017-04-03 115 views
0
Process spark = new SparkLauncher() 
.setAppResource("myApp.jar") 
.setMainClass("com.aa.bb.app") 
.setMaster("yarn") 
.setDeployMode("cluster") 
.addAppArgs(data) 
.launch(); 

这是我如何执行我的火花罐纱线群。下面是一些问题。纱线 - 执行火花的工作

  1. 这是用执行程序处理吗? (每1个纱线执行器有1个火花提交?)
  2. 我应该怎样同时执行多个火花工作? (我应该在哪里设置动态分配(spark.dynamicAllocation.enabled)?)
  3. 我应该在哪里设置执行程序配置的数量?在java代码?在纱线XML?
  4. 如果我将执行者的编号设置为2,并且处理单个任务,那么执行者中的一个将不执行任何操作?
+0

你为什么用这个方法启动一个spark应用程序?你可以使用spark-submit代替。另一件事,我认为你应该先阅读spark文档来理解spar执行者。使用spark运行jar文件并不意味着它在一个执行器上运行或不运行。您应该在使用spark的数据输入大小的代码中进一步探索,如果将会有地图作业启动执行程序。请检查spark文档并完善您的问题http://spark.apache.org/docs/2.1.0/programming-guide.html http://spark.apache.org/docs/2.1.0/running-on- yarn.html – user1314742

回答

0

需要为此做任何事情。它自动分配。

enter image description here