【问题标题】:Running a pyspark program on python3 kernel in jupyter notebook在 jupyter notebook 中的 python3 内核上运行 pyspark 程序
【发布时间】:2020-12-30 06:30:37
【问题描述】:

我使用pip install pyspark 来安装 PySpark。我没有设置任何路径等;但是,我发现所有内容都已下载并复制到C:/Users/Admin/anaconda3/scripts。我在 Python3 内核中打开 jupyter notebook 并尝试运行 SystemML 脚本,但它给了我一个错误。我意识到我还需要将 winutils.exe 放在 C:/Users/Admin/anaconda3/scripts 中,所以我这样做了,脚本按预期运行。

现在,我的程序包括 GridSearch,当我在我的个人笔记本电脑上运行它时,它比在云数据平台上运行的速度明显慢,在云数据平台上我可以使用 Spark(例如 IBM Watson Studio)启动内核。

所以我的问题是:

(i) 如何将 PySpark 添加到 Python3 内核?还是当我import pyspark 时它已经在后台工作了?

(ii) 当我使用 pandas 和 scikit-learn 在同一个数据集上运行相同的代码时,性能并没有太大差异。 PySpark 何时比 pandas 和 scikit-learn 更受青睐/更有利?

另一件事是,尽管 PySpark 似乎工作正常并且我能够导入它的库,但当我尝试运行时

import findspark
findspark.init()

它抛出错误(在第 2 行),说 list is out of range。我用谷歌搜索了一下,发现一个建议说我必须明确设置SPARK_HOME='C:/Users/Admin/anaconda3/Scripts';但是当我这样做时,pyspark 停止工作(findspark.init() 仍然不工作)。

如果有人能解释发生了什么,我将不胜感激。谢谢。

【问题讨论】:

  • 你能显示完整的异常信息吗?

标签: python apache-spark pyspark jupyter-notebook


【解决方案1】:

如何将 PySpark 添加到 Python3 内核

pip install,就像你说的那样

性能差别不大

你只用一台机器,所以不会有

什么时候 PySpark 比 pandas 和 scikit-learn 更受青睐/更有利?

当您想要将相同的代码部署到实际的 Spark 集群上并且您的数据集存储在分布式存储中时


如果你的环境变量已经设置好了,你不一定需要findspark

【讨论】:

    猜你喜欢
    • 2019-08-29
    • 1970-01-01
    • 2018-09-26
    • 2016-10-19
    • 2020-01-31
    • 2023-01-13
    • 1970-01-01
    • 2017-07-26
    • 1970-01-01
    相关资源
    最近更新 更多