主要类中的Spark-submit主url和SparkSession主url,有什么区别?

时间:2016-08-08 10:19:01

标签: apache-spark

使用spark-submit提交作业时,我设置主URL并给他一个主要课程,例如:

spark-submit --class WordCount --master spark://spark:7077 my.jar

但是在这个主类中,我的spark上下文定义了另一个主URL:

SparkSession.builder().appName("Word2vec").master("local").

这让我感到困惑,如果我将spark-submit的作业发送到以spark://spark:7077开始SparkSession的独立群集(local)的主人,会发生什么?高手?

在群集上执行时,SparkSession主网址是否始终与spark-submit网址相同?

1 个答案:

答案 0 :(得分:3)

这些属性之间没有区别。如果同时设置,则直接在应用程序中设置的属性优先。引用documentation

  

指定为flags或属性文件中的任何值都将传递给应用程序,并与通过SparkConf指定的值合并。直接在SparkConf上设置的属性取最高优先级,然后将标志传递给spark-submit或spark-shell,然后选择spark-defaults.conf文件中的选项。自早期版本的Spark以来,已经重命名了一些配置键;在这种情况下,旧的密钥名称仍然被接受,但优先级低于新密钥的任何实例。