运行独立的pyspark时出现Windows错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运行独立的pyspark时出现Windows错误相关的知识,希望对你有一定的参考价值。
我想在Anaconda中导入pyspark并运行示例代码。但是,每当我尝试在Anaconda中运行代码时,都会收到以下错误消息。
错误:py4j.java_gateway:尝试连接到Java服务器时出错(127.0.0.1:53294)Traceback(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src .zip py4j java_gateway.py“,第1021行,在send_command self.socket.sendall(command.encode(”utf-8“))ConnectionResetError:[WinError 10054]远程主机强行关闭现有连接
在处理上述异常期间,发生了另一个异常:
回溯(最近调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第883行,在send_command中response = connection.send_command(command)文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第1025行,在send_command“发送时出错”,e,proto.ERROR_ON_SEND)py4j.protocol.Py4JNetworkError:发送时出错
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第827行,在_get_connection connection = self.deque.pop()中IndexError:从空双端队列中弹出
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第963行,在start self.socket.connect中(自编。 address,self.port))ConnectionRefusedError:[WinError 10061]无法建立连接,因为目标计算机主动拒绝它错误:py4j.java_gateway:尝试连接到Java服务器时出错(127.0.0.1:53294)Traceback (最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第827行,在_get_connection connection = self.deque.pop()中:从一个空的双端队员中弹出
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第963行,在start self.socket.connect中(自编。 address,self.port))ConnectionRefusedError:[WinError 10061]无法建立连接,因为目标计算机主动拒绝它错误:py4j.java_gateway:尝试连接到Java服务器时出错(127.0.0.1:53294)Traceback (最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第827行,在_get_connection connection = self.deque.pop()中:从一个空的双端队员中弹出
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第963行,在start self.socket.connect中(自编。 address,self.port))ConnectionRefusedError:[WinError 10061]无法建立连接,因为目标计算机主动拒绝它错误:py4j.java_gateway:尝试连接到Java服务器时出错(127.0.0.1:53294)Traceback (最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第827行,在_get_connection connection = self.deque.pop()中:从一个空的双端队员中弹出
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第963行,在start self.socket.connect中(自编。 address,self.port))ConnectionRefusedError:[WinError 10061]无法建立连接,因为目标计算机主动拒绝它错误:py4j.java_gateway:尝试连接到Java服务器时出错(127.0.0.1:53294)Traceback (最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第827行,在_get_connection connection = self.deque.pop()中:从一个空的双端队员中弹出
在处理上述异常期间,发生了另一个异常:
回溯(最近一次调用最后一次):文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第963行,在start self.socket.connect中(自编。 address,self.port))ConnectionRefusedError:[WinError 10061]无法建立连接,因为目标机器主动拒绝重新加载模块:py4j.protocol,pyspark.sql.context,py4j.java_gateway,py4j.compat,pyspark.profiler, pyspark.sql.catalog,pyspark.context,pyspark.sql.group,pyspark.sql.conf,pyspark.sql.readwriter,pyspark.resultiterable,pyspark.sql,pyspark.sql.dataframe,pyspark.traceback_utils,pyspark.cloudpickle, pyspark.rddsampler,pyspark.accumulators,pyspark.broadcast,py4j,pyspark.rdd,pyspark.sql.functions,pyspark.java_gateway,pyspark.statcounter,pyspark.conf,pyspark.serializers,pyspark.files,pyspark.join,pyspark。 sql.streaming,pyspark.shuffle,pyspark,py4j.version,pyspark.sql.session,pyspark.sql.column,py4j.finalizer,py4j.java_collections,pyspark.status,pyspark.sql.window,pyspark.sql.util s,pyspark.storagelevel,pyspark.heapq3,py4j.signals,pyspark.sql.types Traceback(最近一次调用最后一次):
文件“”,第1行,在runfile中('C:/Users/hlee/Desktop/pyspark.py',wdir ='C:/ Users / hlee / Desktop')
文件“C: Program Files Anaconda3 lib site-packages spyder utils site sitecustomize.py”,第866行,在runfile execfile(filename,namespace)中
文件“C: Program Files Anaconda3 lib site-packages spyder utils site sitecustomize.py”,第102行,execfile exec(compile(f.read(),filename,'exec'),命名空间)
文件“C:/Users/hlee/Desktop/pyspark.py”,第38行,sc = SparkContext()
在init conf,jsc,profiler_cls中输入文件“C: spark python lib pyspark.zip pyspark context.py”,第115行
文件“C: spark python lib pyspark.zip pyspark context.py”,第168行,在_do_init self._jsc = jsc或self._initialize_context(self._conf._jconf)中
文件“C: spark python lib pyspark.zip pyspark context.py”,第233行,在_initialize_context中返回self._jvm.JavaSparkContext(jconf)
文件“C: spark python lib py4j-0.10.3-src.zip py4j java_gateway.py”,第1401行,在调用answer,self._gateway_client,None,self._fqn)
文件“C: spark python lib py4j-0.10.3-src.zip py4j protocol.py”,第319行,格式为get_return_value(target_id,“。”,name),value)
Py4JJavaError:调用None.org.apache.spark.api.java.JavaSparkContext时发生错误。 :java.net.BindException:无法分配请求的地址:bind:服务'sparkDriver'在16次重试后失败!考虑明确地将服务'sparkDriver'的适当端口(例如SparkUI的spark.ui.port)设置为可用端口或增加spark.port.maxRetries。在sun.nio.ch.Net.bind0(本地方法)sun.nio.ch.Net.bind(Net.java:433)at sun.nio.ch.Net.bind(Net.java:425)at sun位于io.netty.channel.socket.nio.NioserverSocketChannel.doBind(NioServerSocketChannel.java)的sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)上的.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) :125)at io.netty.channel.AbstractChannel $ AbstractUnsafe.bind(AbstractChannel.java:485)at io.netty.channel.DefaultChannelPipeline $ HeadContext.bind(DefaultChannelPipeline.java:1089)at io.netty.channel.AbstractChannelHandlerContext。 invoBind(AbstractChannelHandlerContext.java:430)at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:415)at io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:903)at io.netty.channel.AbstractChannel .bind(AbstractChannel.java:198)at io.netty.bootstrap.AbstractBootstrap $ 2.run(AbstractBootstrap.java:348)at io.netty.util.concurrent.SingleThreadEventExecutor。 runAllTasks(SingleThreadEventExecutor.java:357)at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357)at io.netty.util.concurrent.SingleThreadEventExecutor $ 2.run(SingleThreadEventExecutor.java:111)at java。 lang.Thread.run(Thread.java:745)
以下是我的示例代码,我在cmd中运行Apache没有问题。
import os
import sys
spark_path = r"C:spark"
os.environ['SPARK_HOME'] = spark_path
sys.path.insert(0, spark_path + "/bin")
sys.path.insert(0, spark_path + "/python/pyspark/")
sys.path.insert(0, spark_path + "/python/lib/pyspark.zip")
sys.path.insert(0, spark_path + "/python/lib/py4j-0.10.3-src.zip")
from pyspark import SparkContext
sc = SparkContext()
import random
NUM_SAMPLES = 100000
def sample(p):
x, y = random.random(), random.random()
return 1 if x*x + y*y < 1 else 0
count = sc.parallelize(range(0, NUM_SAMPLES)).map(sample)
.reduce(lambda a, b: a + b)
print("Pi is roughly %f" % (4.0 * count / NUM_SAMPLES))
我已经下载了winutils.exe并在Varaible环境中添加了HADOOP_HOME变量,并在spark-env.sh文件中添加了导出SPARK_MASTER_IP = 127.0.0.1,导出SPARK_LOCAL_IP = 127.0.0.1。但是,我仍然得到同样的错误。有人可以帮助我,并指出我错过了什么?
先感谢您,
在我的情况下,我只需要重新检查内核。
问题是我创建了两次环境:每次出错都会从头开始重新编写代码。
以上是关于运行独立的pyspark时出现Windows错误的主要内容,如果未能解决你的问题,请参考以下文章
提交火花期间 pyspark 出现 Windows Spark_Home 错误
将 pyspark pandas_udf 与 AWS EMR 一起使用时出现“没有名为‘pandas’的模块”错误
过滤df时出现pyspark.sql.utils.ParseException错误
连接到 sql server 时出现 pyspark jdbc 错误