如何获取SparkSession来查找添加的python文件

时间:2019-04-24 20:30:32

标签: apache-spark pyspark bigdl

在运行pip install BigDL==0.8.0之后,从python运行from bigdl.util.common import *完全没有问题。

但是,使用以下两个SparkSession之一:

spark = (SparkSession.builder.master('yarn')
    .appName('test')
    .config("spark.jars", "/BigDL/spark/dl/target/bigdl-0.8.0-jar-with-dependencies-and-spark.jar")
    .config('spark.submit.pyFiles', '/BigDL/pyspark/bigdl/util.zip')
    .getOrCreate()
)

spark = (SparkSession.builder.master('local')
    .appName('test')
    .config("spark.jars", "/BigDL/spark/dl/target/bigdl-0.8.0-jar-with-dependencies-and-spark.jar")
    .config('spark.submit.pyFiles', '/BigDL/pyspark/bigdl/util.zip')
    .getOrCreate()
)

我收到以下错误消息。

ImportError: ('No module named bigdl.util.common', <function subimport at 0x7fd442a36aa0>, ('bigdl.util.common',))

除了上面的'spark.submit.pyFiles'配置之外,在SparkSession成功启动之后,我尝试了spark.sparkContext.addPyFile("util.zip"),其中“ util.zip”包含https://github.com/intel-analytics/BigDL/tree/master/pyspark/bigdl/util中的所有python文件。 >

我还压缩了该文件夹https://github.com/intel-analytics/BigDL/tree/master/pyspark/bigdl(分支0.8)中的所有内容,并指向了.config('spark.submit.pyFiles', '/path/to/bigdl.zip')中的文件,但这还是行不通的。

如何获取SparkSession来查看这些文件?

1 个答案:

答案 0 :(得分:0)

弄清楚了。唯一有效的方法是在SparkSesssion启动后spark.sparkContext.addPyFile("bigdl.zip")。其中“ bigdl.zip”包含https://github.com/intel-analytics/BigDL/tree/master/pyspark/bigdl(分支0.8)中的所有文件。

不确定为什么.config('spark.submit.pyFiles', 'bigdl.zip')不起作用。