modulenotfounderror:没有名为“graphframes”的模块

nukf8bse  于 2021-07-09  发布在  Spark
关注(0)|答案(1)|浏览(445)

我想跑 graphframespyspark .
我找到了这个答案,并按照它的指示,但它不工作。
这是我的密码 hello_spark.py :

import pyspark

conf = pyspark.SparkConf().set("spark.driver.host", "127.0.0.1")
sc = pyspark.SparkContext(master="local", appName="myAppName", conf=conf)
sc.addPyFile("/opt/spark/jars/spark-graphx_2.12-3.0.2.jar")

from graphframes import *

使用此命令运行时:

spark-submit hello_spark.py

它返回以下错误:

from graphframes import *
ModuleNotFoundError: No module named 'graphframes'

这是我的 .bashrc 配置:


# For Spark setup

export SPARK_HOME=/opt/spark

export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

export PYSPARK_PYTHON=/usr/bin/python3

export SPARK_LOCAL_IP=localhost

export SPARK_OPTS="--packages graphframes:graphframes:0.8.1-spark3.0-s_2.12"

我的版本 spark: 3.0.2 , scala: 2.12.10 .
我安装了 graphframes 使用此命令:

pyspark --packages graphframes:graphframes:0.8.1-spark3.0-s_2.12

有人知道怎么解决这个问题吗?谢谢。

blmhpbnm

blmhpbnm1#

我发现如果我使用这个命令,它会工作:

spark-submit hello_spark.py --packages graphframes:graphframes:0.8.1-spark3.0-s_2.12

您应该注意到,您必须为安装一些依赖项 pyspark 就像 numpy :

File "<frozen zipimport>", line 259, in load_module
  File "/opt/spark/python/lib/pyspark.zip/pyspark/ml/param/__init__.py", line 26, in <module>
ModuleNotFoundError: No module named 'numpy'

所以我就改变主意 PYSPARK_PYTHON 我的人生之路 miniconda 环境。

export PYSPARK_PYTHON=/home/username/miniconda3/envs/pyenv/bin/python

您可以通过激活环境路径并运行它来找到环境路径 which 命令:

(base) username@user:~$ conda activate pyenv
(pyenv) username@user:~$ which python
/home/username/miniconda3/envs/pyenv/bin/python

相关问题