Spark:错误未找到值SC

时间:2015-11-16 10:31:39

标签: apache-spark apache-spark-sql

我刚开始使用Spark。我安装了Spark的CDH5。但是,当我尝试使用sparkcontext时,它会给出如下错误

<console>:17: error: not found: value sc
       val distdata = sc.parallelize(data)

我对此进行了研究,发现了error: not found: value sc

并尝试使用./spark-shell启动spark上下文。它给出了错误No such File or Directory

5 个答案:

答案 0 :(得分:3)

如果您在确切目录中,则可以从spark-shell开始./;如果您在其他地方,则可以path/to/spark-shell开始。

另外,如果您使用spark-submit运行脚本,则需要先将sc初始化为SparkContext

import org.apache.spark.SparkContext
import org.apache.spark.SparkConf

val conf = new SparkConf().setAppName("Simple Application")
val sc = new SparkContext(conf)

答案 1 :(得分:3)

将spark目录添加到路径,然后您可以从任何地方使用spark-shell。

如果您在spark-submit作业中使用它来添加import org.apache.spark.SparkContext,则使用以下命令创建一个Spark上下文:

val sc = new SparkContext(conf)

其中conf已定义。

答案 2 :(得分:1)

还有另一个stackoverflow帖子,通过从spark会话获取sc(火花上下文)来回答此问题。我这样做:

val 火花 = SparkSession.builder()。appName(“ app_name”)。enableHiveSupport()。getOrCreate()

val sc = 火花 .sparkContext

原始答案在这里: Retrieve SparkContext from SparkSession

答案 3 :(得分:0)

启动新终端可以解决我的问题。

答案 4 :(得分:0)

您需要先运行Hadoop守护程序(运行此命令“start-all.sh”)。然后尝试