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秒
我认为每个应用程序都在掌握...... 我想在每个核心的火花上并行运行应用程序.. 我如何并行运行多个火花应用?
答案 0 :(得分:0)
我认为,您正在一台服务器上运行所有工作人员来模拟群集。
执行程序核心与普通核心不同。
执行程序核心是执行程序可以运行的并发任务数。 工作核心 - 使工作者运行是“CPU核心”。
在Spark中,可以选择在启动从站时设置CPU内核的数量,该从站定义了允许Spark应用程序仅在工作站上的计算机上使用的总CPU内核。 默认值为:使用所有可用核心
启动Spark的命令是这样的:
./sbin/start-all.sh --cores 2
或者您可以尝试使用--executor-cores 2