2017-10-12 56 views
0

当我尝试使用spark-submit使用参数--packages定义提交spark工作时,我期望spark首先搜索工件的本地repo,并在存在的情况下使用它们。火花提交失败,但未连接到互联网

我观察到每次spark都试图从internet上获取工件,并且如果没有连接失败。

我可以强制spark使用本地缓存吗?

例如:

spark-submit --master yarn --deploy-mode cluster --packages org.apache.spark:spark-streaming-kafka-0-10_2.11:2.1.0,org.apache.spark:spark-streaming_2.11:2.1.1,org.apache.spark:spark-sql_2.11:2.1.1 my-assembly-1.1.0.jar /usr/local/path/config.properties 

回答

0

您可以添加需要的包到位于$SPARK_HOME/confspark-defaults.conf文件。它将在本地m2看包。如果软件包不在local-m2中,它会尝试从maven-central下载它们。 例如

spark.jars.packages org.vegas-viz:vegas_2.11:0.3.11,org.apache.spark:spark-streaming-kafka-0-10_2.11:2.1.0