[英]Spark-shell is not working
當我提交spark-shell
命令時,我看到以下錯誤:
# spark-shell
> SPARK_MAJOR_VERSION is set to 2, using Spark2
File "/usr/bin/hdp-select", line 249
print "Packages:"
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(t "Packages:")?
ls: cannot access /usr/hdp//hadoop/lib: No such file or directory
Exception in thread "main" java.lang.IllegalStateException: hdp.version is not set while running Spark under HDP, please set through HDP_VERSION in spark-env.sh or add a java-opts file in conf with -Dhdp.version=xxx
at org.apache.spark.launcher.Main.main(Main.java:118)
問題是 HDP 腳本 /usr/bin/hdp-select 顯然是在 Python3 下運行的,而它包含不兼容的 Python2 特定代碼。
您可以通過以下方式將 /usr/bin/hdp-select 移植到 Python3:
你也可以嘗試強制HDP在Python2下運行/usr/bin/hdp-select:
PYSPARK_DRIVER_PYTHON=python2 PYSPARK_PYTHON=python2 spark-shell
有同樣的問題:我在運行 spark 之前設置了HDP_VERSION
。
export HDP_VERSION=<your hadoop version>
spark-shell
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.