本例中 local[4] 的含义是什么

本例中 local[4] 的含义是什么

我正在看这个例子阿帕奇火花文档。它似乎将一个名为 local[4] 的变量传递到 --master 变量中。我以前没见过。这是什么意思?我在 OS X 上使用 bash。有“本地”数组吗?它是一个 Maven 构造吗?

# Package a jar containing your application
$ mvn package
...
[INFO] Building jar: {..}/{..}/target/simple-project-1.0.jar

# Use spark-submit to run your application
$ YOUR_SPARK_HOME/bin/spark-submit \
  --class "SimpleApp" \
  --master local[4] \
  target/simple-project-1.0.jar
...
Lines with a: 46, Lines with b: 23

答案1

这是 Spark 问题,而不是 bash 或 Maven 问题。对于 Spark,主名称可以采用以下形式:

local[K]:使用 K 个工作线程在本地运行 Spark(应设置为计算机上的核心数)。

查看https://github.com/mesos/spark/wiki/Spark-Programming-Guide#master-names了解更多信息。

答案2

方括号在本文中没有特殊含义,它们是通配在这种情况下,功能(“字符范围”),因此使用默认配置(关闭),如果工作目录中有文件,nullglob它将传递文字字符串,否则(谢谢local4local4local[4]@Celada)。

这不是一个变量引用(${local[4]}将是一个数组索引替换)。

相关内容