Python 似乎无法初始化spark上下文(pyspark)
当我尝试运行Python 似乎无法初始化spark上下文(pyspark),python,apache-spark,ubuntu,pyspark,Python,Apache Spark,Ubuntu,Pyspark,当我尝试运行sc=SparkContext(appName=“exampleName”)时,我已经在下面列出了整个错误: 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“/home/sharan/.local/lib/python3.5/site packages/pyspark/context.py”,第118行,在__ 形态、jsc、探查器(cls) 文件“/home/sharan/.local/lib/python3.5/site packages/pyspark/contex
sc=SparkContext(appName=“exampleName”)
时,我已经在下面列出了整个错误:
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/home/sharan/.local/lib/python3.5/site packages/pyspark/context.py”,第118行,在__
形态、jsc、探查器(cls)
文件“/home/sharan/.local/lib/python3.5/site packages/pyspark/context.py”,第188行,在
self.\u javaAccumerator=self.\u jvm.pythonacumeratorv2(主机、端口)
文件“/home/sharan/.local/lib/python3.5/site packages/py4j/java_gateway.py”,第1525行,在调用中__
回答,自我。\网关\客户端,无,自我。\ fqn)
文件“/home/sharan/.local/lib/python3.5/site packages/py4j/protocol.py”,第332行,在get\u return\u值中
格式(目标id,“.”,名称,值))
py4j.protocol.Py4JError:调用None.org.apache.spark.api.python.pythonacumeratorv2时出错。跟踪:
py4j.Py4JException:Constructor org.apache.spark.api.python.PythonAccumulatorV2([class java.lang.String,class java.lang.Integer])不存在
位于py4j.reflection.ReflectionEngine.getConstructor(ReflectionEngine.java:179)
位于py4j.reflection.ReflectionEngine.getConstructor(ReflectionEngine.java:196)
在py4j.Gateway.invoke处(Gateway.java:237)
位于py4j.commands.ConstructorCommand.invokeConstructor(ConstructorCommand.java:80)
在py4j.commands.ConstructorCommand.execute处(ConstructorCommand.java:69)
在py4j.GatewayConnection.run处(GatewayConnection.java:238)
运行(Thread.java:748)
我不知道如何调试这个。有我可以访问的日志吗?我是否缺少一个我应该在我的ubuntu电脑上使用的特定软件包 这是因为pyspark版本与spark版本不同。如果您已经安装了spark版本2.4.7,那么也可以使用pyspark版本2.4.7 要获得spark版本,请在spark UI上进行检查或使用以下任何命令
spark提交--版本
或
spark shell--版本
或
sparksql--version
要安装pyspark的特定版本,请使用以下命令
pip安装pyspark==2.4.7
是否从pyspark
命令行运行此程序?如果是这样,那么您就不能这样做,因为当您进入pyspark shell时,sparkcontext将使用其默认值初始化,spark不允许为单个驱动程序运行多个sparkcontext
。@MdShihabUddin我以python3程序的形式运行它,看起来您混合了不兼容的Java和Python代码版本。当您使用独立于实际Spark安装的pip
(或类似工具)安装pyspark
,或者您有多个Spark版本,并且Python搜索路径或Spark\u HOME
配置不正确时,通常会发生这种情况。这里有一个类似的问题:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/sharan/.local/lib/python3.5/site-packages/pyspark/context.py", line 118, in __init__
conf, jsc, profiler_cls)
File "/home/sharan/.local/lib/python3.5/site-packages/pyspark/context.py", line 188, in _do_init
self._javaAccumulator = self._jvm.PythonAccumulatorV2(host, port)
File "/home/sharan/.local/lib/python3.5/site-packages/py4j/java_gateway.py", line 1525, in __call__
answer, self._gateway_client, None, self._fqn)
File "/home/sharan/.local/lib/python3.5/site-packages/py4j/protocol.py", line 332, in get_return_value
format(target_id, ".", name, value))
py4j.protocol.Py4JError: An error occurred while calling None.org.apache.spark.api.python.PythonAccumulatorV2. Trace:
py4j.Py4JException: Constructor org.apache.spark.api.python.PythonAccumulatorV2([class java.lang.String, class java.lang.Integer]) does not exist
at py4j.reflection.ReflectionEngine.getConstructor(ReflectionEngine.java:179)
at py4j.reflection.ReflectionEngine.getConstructor(ReflectionEngine.java:196)
at py4j.Gateway.invoke(Gateway.java:237)
at py4j.commands.ConstructorCommand.invokeConstructor(ConstructorCommand.java:80)
at py4j.commands.ConstructorCommand.execute(ConstructorCommand.java:69)
at py4j.GatewayConnection.run(GatewayConnection.java:238)
at java.lang.Thread.run(Thread.java:748)