新来的火花。下载了所有内容,但运行pyspark时会出现以下错误:
Type "help", "copyright", "credits" or "license" for more information.
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
17/02/05 20:46:58 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Traceback (most recent call last):
File "C:\Users\Carolina\spark-2.1.0-bin-hadoop2.7\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\bin\..\python\pyspark\shell.py", line 43, in <module>
spark = SparkSession.builder\
File "C:\Users\Carolina\spark-2.1.0-bin-hadoop2.7\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\python\pyspark\sql\session.py", line 179, in getOrCreate
session._jsparkSession.sessionState().conf().setConfString(key, value)
File "C:\Users\Carolina\spark-2.1.0-bin-hadoop2.7\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\python\lib\py4j-0.10.4-src.zip\py4j\java_gateway.py", line 1133, in __call__
File "C:\Users\Carolina\spark-2.1.0-bin-hadoop2.7\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6\python\pyspark\sql\utils.py", line 79, in deco
raise IllegalArgumentException(s.split(': ', 1)[1], stackTrace)
pyspark.sql.utils.IllegalArgumentException: u"Error while instantiating 'org.apache.spark.sql.hive.HiveSessionState':"
另外,当我尝试时(按照http://spark.apache.org/docs/latest/quick-start.html的建议)
textFile = sc.textFile("README.md")
我得到:
NameError: name 'sc' is not defined
有什么建议吗?谢谢您!
看起来您已经在上面的答案中找到了问题的第二部分的答案,但是对于通过
'org.apache.spark.sql.hive.HiveSessionState'
错误到达这里的未来用户来说,这个类可以在spark hive jar文件中找到,如果不是用hive构建的,它就不会与spark捆绑在一起。你可以在以下网址获得这个罐子:
您必须将其放入
SPARK_HOME/jars
文件夹中,然后Spark应该能够找到所需的所有配置单元类。如果您是从pyspark控制台执行此操作,可能是因为您的安装不起作用。
如果没有,那是因为大多数示例假设您在pyspark控制台中测试代码,其中存在默认变量'sc'。
您可以使用以下代码在脚本开头自己创建SparkContext:
我在Windows7上也遇到了这个问题,它使用了预先构建的Spark2.2。以下是Windows用户的可能解决方案:
确保正确设置了所有环境路径,包括
SPARK_PATH
、HADOOP_HOME
等。获取Spark Hadoop预构建包的正确版本
winutils.exe
然后打开命令提示符作为管理,运行以下命令:
winutils chmod 777 C:\tmp\hive
注意:根据调用
pyspark
或spark-shell
的位置,驱动器可能不同此链接应获得以下荣誉:see the answer by timesking
相关问题 更多 >
编程相关推荐