未定义火花线簇'sc'

2024-05-20 13:17:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用spark 1.3.1。

当spark运行在纱线群集模式时,我必须声明sc吗?我可以在spark python shell中运行相同的python程序。

这就是我提交工作的方式:

/bin/spark-submit --master yarn-cluster test.py --conf conf/spark-defaults.conf

在spark默认值中,我确实声明了spark.yarn.jar在哪里,还要检查spark用户spark.yarn.jar/user/admin在哪里的权限,以使所有用户都有读写执行。

在我的test.py程序中,我有from pyspark.sql import SQLContext,第一行是

sqlctx=SQLContext(sc)

错误是

NameError: name 'sc' is not defined

在那条线上。

知道吗?


Tags: 用户pytest程序声明conf模式shell
2条回答

这就是我的工作:

from pyspark import SparkConf, SparkContext
from pyspark.sql import SQLContext

conf = SparkConf().setAppName("building a warehouse")
sc = SparkContext(conf=conf)
sqlCtx = SQLContext(sc)

希望这有帮助。

sc是在spark-shell中创建的帮助器值,但不是用spark-submit自动创建的。你必须实例化你自己的SparkContext并使用它

conf = SparkConf().setAppName(appName)
sc = SparkContext(conf=conf)

相关问题 更多 >