【问题标题】:SparkSession | Ubuntu | Pycharm not working火花会话 | Ubuntu | Pycharm 不工作
【发布时间】:2020-07-25 19:19:52
【问题描述】:

我正在尝试使用 PyCharm 而不是 jupyter 笔记本在 Ubuntu 上本地使用 PySpark,以构建 Electron 应用程序。但是,当我尝试设置 SparkSession 时,它不起作用。当我尝试这个时:

spark = SparkSession.builder.master('local[*]').appName('Search').enableHiveSupport().getOrCreate
df = pd.DataFrame([1,2,3], columns=['Test'])
myschema = StructType([StructField('Test'),Integertype(),True)])
df2 = spark.createDataFrame(df,schema=myschema)
print(type(df2))

会话打开,但它告诉我

"AttributeError: 'function' object has no attribute 'createDataFrame' "

然后,用“.getOrCreate()”重写上面的代码,它会告诉我

"FileNotFoundError: [Error 2] No such file or directory "home/...././bin/spark-submit'

我猜 Pycharm 中的设置可能会关闭,但我真的不明白为什么。

【问题讨论】:

    标签: python-3.x ubuntu pyspark pycharm


    【解决方案1】:

    您需要使用方法调用getOrCreate(),而不是getOrCreate。此外,请确保在 pycharm 中用于项目的 python 解释器中安装pyspark。您可以通过 Preferences -> Python Interpreter in pycharm 访问它。

    更新: 尝试在本地下载并提取 spark binaries(例如 spark 2.4.0),然后在 bashrc 中添加以下条目(并获取它)。我假设你使用的是 spark 2.4.0,所以 py4j 是特定于这个版本的。对于任何其他版本的 spark,请检查 py4j 版本并相应添加。

    export SPARK_HOME=/<your_path>/spark-2.4.0-bin-hadoop2.7
    export PYTHONPATH=${SPARK_HOME}/python:$PYTHONPATH
    export PYTHONPATH=${SPARK_HOME}/python/lib/py4j-0.10.7-src.zip:$PYTHONPATH
    export PYSPARK_PYTHON=/<location_of_python_interpreter>
    

    无论您要链接到PYSPARK_PYTHON 的任何python 解释器,请确保在您的pycharm 项目中使用相同的python。

    【讨论】:

    • 我做了以下,我仍然有同样的错误。我已经用 python3.7 和 3.6 尝试过并返回相同的错误
    • 它就像一个魅力!我收到一堆错误,如下所示[ 20/04/13 13:34:24 WARN Utils: Your hostname, VB resolves to a loopback address: 127.0.1.1;使用 10.0.2.15 代替(在接口 enp0s3 上)...] 但我想这可能是由于本地安装。
    猜你喜欢
    • 2017-04-27
    • 1970-01-01
    • 1970-01-01
    • 2017-11-23
    • 2017-03-16
    • 2019-09-22
    • 2018-07-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多