从Spark downloads page开始,如果我下载tar file for v2.0.1,我会看到它包含一些我觉得有用的广告可以包含在我的应用中。
如果我下载tar file for v1.6.2,我在那里找不到jars文件夹。是否有我应该从该网站使用的备用包类型?我目前正在选择默认值(预先为Hadoop 2.6构建)。或者,在哪里可以找到那些Spark罐子 - 我应该从http://spark-packages.org单独获取它们吗?
以下是我想要使用的一系列指示罐:
答案 0 :(得分:4)
Sparks发布其运行时的方式已从V1更改为V2。
$SPARK_HOME/jars
spark-assembly*.jar
下的大量$SPARK_HOME/lib
包含所有依赖项。我相信你可以改变默认行为,但这需要你自己重新编译Spark ......
另外,关于spark-csv
具体来说:
spark-csv
下载commons-csv
(对于Scala 2.10)并将两个JAR添加到您的CLASSPATH中(在命令行上使用--jars
,或者如果命令行由于某种原因不起作用,则使用prop spark.driver.extraClassPath
+指令sc.addJar()
)...并且语法更麻烦,太<小时/> 摘自Spark 2.1.x中的vanilla
$SPARK_HOME/bin/spark-class
(大大简化)
#Find Spark jars
SPARK_JARS_DIR="${SPARK_HOME}/jars"
LAUNCH_CLASSPATH="$SPARK_JARS_DIR/*"
从Spark 1.6.x开始
#查找程序集jar
ASSEMBLY_DIR="${SPARK_HOME}/lib"
ASSEMBLY_JARS="$(ls -1 "$ASSEMBLY_DIR" | grep "^spark-assembly.*hadoop.*\.jar$" || true)"
SPARK_ASSEMBLY_JAR="${ASSEMBLY_DIR}/${ASSEMBLY_JARS}"
LAUNCH_CLASSPATH="$SPARK_ASSEMBLY_JAR"