一整天都在juypter上玩Pypark,没有任何问题。只需使用docker图像 juypter/pyspark-notebook
,我需要的东西90%都打包好了(耶!)
我想使用graphframes开始探索,graphframes位于graphx之上,graphx位于spark之上。有人用过这个组合吗?
基本上,根据文档,我只需要传递“--gr包aphframes:xxyyzz运行pyspark下载并运行graphframes时。问题是一旦容器出现,juypter就已经在运行了。
在运行docker run时,我尝试将“-packages”行作为环境变量(-e)传递给juypter\u spark\u opts和spark\u opts,但没有成功。我发现我能做到 pip install graphframes
从一个终端,这让我有了一部分的方法——安装了python库,但是java库不是“java.lang.classnotfoundexception:org.graphframes.graphframepythonapi”。
映像细节文档似乎没有提供有关如何将spark包部署到映像的任何细节。
有什么地方可以扔葡萄架吗?有安装spark包post docker的命令吗?有没有一个神奇的论点 docker run
会安装这个吗?
我敢打赌这有一个非常简单的答案——或者我是在这里?
参考文献:
没有名为graphframes jupyter笔记本的模块
如何使用jupyter笔记本运行pyspark?
1条答案
按热度按时间7xzttuei1#
所以答案很简单:
根据这里的要点,我们需要简单地告诉juypter添加
--packages
连接到SPARK_SUBMIT
把这样的东西放在我的笔记本上。spark在获取上下文时将退出并安装包:关注graphframes包中的可用版本,就目前而言,它意味着scala2.12上spark3.0上的graphframes0.8.1。