在pyspark中创建graphframe时出错

时间:2019-01-12 06:21:28

标签: apache-spark pyspark graphframes

我正在尝试运行以下代码以在本地设置的pyspark中创建graphframe。但是我遇到了错误。我正在使用spark-2.4.0-bin-hadoop2.7版本。

from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
#spark = SparkSession.builder.appName('fun').getOrCreate()
vertices = spark.createDataFrame([('1', 'Carter', 'Derrick', 50), 
                                  ('2', 'May', 'Derrick', 26),
                                 ('3', 'Mills', 'Jeff', 80),
                                  ('4', 'Hood', 'Robert', 65),
                                  ('5', 'Banks', 'Mike', 93),
                                 ('98', 'Berg', 'Tim', 28),
                                 ('99', 'Page', 'Allan', 16)],
                                 ['id', 'name', 'firstname', 'age'])
edges = spark.createDataFrame([('1', '2', 'friend'), 
                               ('2', '1', 'friend'),
                              ('3', '1', 'friend'),
                              ('1', '3', 'friend'),
                               ('2', '3', 'follows'),
                               ('3', '4', 'friend'),
                               ('4', '3', 'friend'),
                               ('5', '3', 'friend'),
                               ('3', '5', 'friend'),
                               ('4', '5', 'follows'),
                              ('98', '99', 'friend'),
                              ('99', '98', 'friend')],
                              ['src', 'dst', 'type'])
g = GraphFrame(vertices, edges)

我收到以下错误。

enter image description here

2 个答案:

答案 0 :(得分:1)

以下内容似乎对我有用。

  1. https://spark-packages.org/package/graphframes/graphframes下载.jar文件
  2. 由于我在Anaconda上运行了pyspark,因此我将.jar文件和其他/anaconda3/lib/python3.7/site-packages/pyspark/jars/文件添加到了该路径。
  3. 然后,以下脚本似乎有效。
.jar

答案 1 :(得分:0)

您可以通过执行以下步骤来解决错误:

1)根据您使用的Spark版本从下方下载graphframes jar(例如,由于您使用的是Spark 2.4版本,因此为0.7.0-spark2.4-s_2.11)

https://spark-packages.org/package/graphframes/graphframes

2)将下载的graphframes jar添加到您的Spark jar 例如$ SPARK_HOME / jars

3)首次使用参数启动pyspark,以便下载所有graphframe的jar依赖项:

例如在Windows计算机中,您可以使用命令提示符

启动
  

$ SPARK_HOME / bin / pyspark-封装graphframes:graphframes:0.7.0-spark2.4-s_2.11

4)在运行图形命令之前,在命令下面发出问题 从图框导入*

上述步骤将解决您的问题