0

在 bash shell 中运行spark-shell --packages "graphframes:graphframes:0.7.0-spark2.4-s_2.11"有效,我可以成功导入 graphframes 0.7,但是当我尝试在这样的 scala jupyter 笔记本中使用它时:

import scala.sys.process._
"spark-shell --packages \"graphframes:graphframes:0.7.0-spark2.4-s_2.11\""!
import org.graphframes._

给出错误信息:

<console>:53: error: object graphframes is not a member of package org
   import org.graphframes._

据我所知,这意味着它运行 bash 命令,但仍然找不到检索到的包。

我在运行 spark scala 内核的 EMR Notebook 上执行此操作。

我是否必须在 jupyter 环境中设置某种火花库路径?

4

1 回答 1

0

那根本不应该工作。您的代码所做的只是尝试启动一个新的独立 Spark shell。SparkContext此外,Spark 包必须在第一次初始化时加载。

您应该添加(假设这些是正确的版本)

spark.jars.packages graphframes:graphframes:0.7.0-spark2.4-s_2.11

到您的 Spark 配置文件,或在初始化SparkConf/SparkSessionBuilder.config 之前使用等效项。SparkSession

于 2019-02-12T18:31:13.347 回答