如何在standlone模式下在不同的工作节点上运行多个spark应用程序?

时间:2017-06-12 06:08:38

标签: apache-spark

1.我添加了这些行./conf/spark.env.sh

**export SPARK_MASTER_OPTS="-Dspark.deploy.defaultCores=1"
export SPARK_WORKER_OPTS="-Dspark.deploy.defaultCores=1"
export SPARK_WORKER_CORES=1
export SPARK_WORKER_MEMORY=1g
export SPARK_WORKER_INSTANCES=7**

2.i确实在终端上运行了这段代码

./ sbin目录/ start-all.sh

3.所有工人和主人都已经开始......我可以在网络用户界面上看到

4.之后我提交了多个火花应用

对于一个应用程序,它只需要2秒 但对于6个应用程序,每个应用程序需要8秒

这是我在终端上运行的.sh文件。

gnome-terminal -e '/home/uvionics/Downloads/spark-SparkR-streaming/bin/spark-submit --master spark://uvionics-Aspire-E5-001:7077 --executor-memory 1g  --executor-cores 1 --num-executors 1 /home/uvionics/code/inter11.R 41' -x 'excute' &
 gnome-terminal -e '/home/uvionics/Downloads/spark-SparkR-streaming/bin/spark-submit --master spark://uvionics-Aspire-E5-001:7077 --executor-memory 1g --executor-cores 1 --num-executors 1 /home/uvionics/code/inter11.R 42' -x 'excute' & 
gnome-terminal -e '/home/uvionics/Downloads/spark-SparkR-streaming/bin/spark-submit --master spark://uvionics-Aspire-E5-001:7077 --executor-memory 1g --executor-cores 1 --num-executors 1 /home/uvionics/code/inter11.R 43' -x 'excute' & 
gnome-terminal -e '/home/uvionics/Downloads/spark-SparkR-streaming/bin/spark-submit --master spark://uvionics-Aspire-E5-001:7077 --executor-memory 1g --executor-cores 1 --num-executors 1  /home/uvionics/code/inter11.R 44' -x 'excute' & 
gnome-terminal -e '/home/uvionics/Downloads/spark-SparkR-streaming/bin/spark-submit --master spark://uvionics-Aspire-E5-001:7077  --executor-memory 1g --executor-cores 1 --num-executors 1 /home/uvionics/code/inter11.R 45 ' -x 'excute' &
gnome-terminal -e '/home/uvionics/Downloads/spark-SparkR-streaming/bin/spark-submit --master spark://uvionics-Aspire-E5-001:7077 --executor-memory 1g --executor-cores 1 --num-executors 1 /home/uvionics/code/inter11.R 46' -x 'excute'

当我运行这些代码时,它需要超过8秒

我认为每个应用程序都在掌握...... 我想在每个核心的火花上并行运行应用程序.. 我如何并行运行多个火花应用?

1 个答案:

答案 0 :(得分:0)

我认为,您正在一台服务器上运行所有工作人员来模拟群集。

执行程序核心与普通核心不同。

执行程序核心是执行程序可以运行的并发任务数。 工作核心 - 使工作者运行是“CPU核心”。

在Spark中,可以选择在启动从站时设置CPU内核的数量,该从站定义了允许Spark应用程序仅在工作站上的计算机上使用的总CPU内核。 默认值为:使用所有可用核心

启动Spark的命令是这样的: ./sbin/start-all.sh --cores 2

或者您可以尝试使用--executor-cores 2

相关问题