我正在Spark集群上运行我的程序。但是当我在作业运行时查看UI时,我发现只有一个工作人员执行大部分任务。我的集群有一个主人和4个工人,其中主人也是工人。
我希望我的任务尽快完成,我相信如果要在工人之间平均分配任务数量,那么工作将更快完成。
有什么办法可以自定义吗?
System.setProperty("spark.default.parallelism","20")
val sc = new SparkContext("spark://10.100.15.2:7077","SimpleApp","/home/madhura/spark",List("hdfs://master:54310/simple-project_2.10-1.0.jar"))
val dRDD = sc.textFile("hdfs://master:54310/in*",10)
val keyval=dRDD.coalesce(100,true).mapPartitionsWithIndex{(ind,iter) => iter.map(x => process(ind,x.trim().split(' ').map(_.toDouble),q,m,r))}
我尝试了这个,但没有帮助。