【问题标题】:Is there a bug with SparkContext() and SparkConf()SparkContext() 和 SparkConf() 是否存在错误
【发布时间】:2017-06-25 11:15:30
【问题描述】:

当我尝试使用 SparkConf 初始化 SparkContext 时,如下所示:

from pyspark import *
from pyspark.streaming import *

cfg = SparkConf().setMaster('yarn').setAppName('MyApp')
sc = SparkContext(conf=cfg)
print(sc.getConf().getAll())

rdd = sc.parallelize(list('abcdefg')).map(lambda x:(x,1))
print(rdd.collect())

输出显示它没有用 yarn 运行:

[(u'spark.master', u'local[10]'), ...]

它使用了 $SPARK_HOME/conf/spark-defaults.conf 中的配置:

spark.master local[10]

我的电脑: Python2.7.2 Spark2.1.0


然后我在 spark2.0.2 中运行相同的代码,SparkConf() 也可以正常工作

所以这真的是一个错误?

【问题讨论】:

    标签: apache-spark pyspark


    【解决方案1】:

    要使用纱线,您应该指定驱动程序应该在主节点还是工作节点之一上运行。

    yarn-client 会在主节点上执行驱动

    SparkConf().setMaster('yarn-client')
    

    yarn-cluster 将在其中一个工作节点上执行驱动程序

    SparkConf().setMaster('yarn-cluster')
    

    Here 是在 yarn-client 模式下运行的示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-04
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      • 2019-04-09
      • 2015-09-19
      • 1970-01-01
      • 2019-02-23
      相关资源
      最近更新 更多