You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PySpark入门执行简单代码遇Python Worker崩溃问题求助

PySpark Python Worker 崩溃问题排查方案

问题描述

运行以下PySpark代码时,执行rdd2.collect()触发Python Worker意外崩溃:

from pyspark import SparkConf, SparkContext

conf = SparkConf().setAppName('Read File')
sc = SparkContext.getOrCreate(conf=conf)

rdd = sc.textFile('data1.txt')
print(rdd.collect())

rdd2 = rdd.map(lambda x: x.split(' '))
print(rdd2.collect())

报错信息:

ERROR Executor: Exception in task 1.0 in stage 2.0 (TID 5)/ 2]
org.apache.spark.SparkException: Python worker exited unexpectedly (crashed)

本地环境配置:

  • Windows 10(通过cmd.exe运行)
  • Python 3.12.1
  • Java 11.0.20
  • Spark 3.5.0
  • Hadoop 3.3.6

已配置JAVA_HOME、SCALA_HOME、HADOOP_HOME、SPARK_HOME、PYSPARK_PYTHON、PYSPARK_DRIVER_PYTHON(后两项指向Python安装目录下的python.exe),尝试过重装组件、更换版本、调整环境变量,问题仍未解决。

排查与解决步骤

1. 降级Python版本至兼容范围

Spark 3.5.0官方仅支持Python 3.8~3.11版本,Python 3.12属于未正式适配版本,存在底层API兼容性问题。建议将Python降级到3.11.x版本,这是此类问题最常见的修复方案。

2. 验证权限与运行方式

Windows环境下,确保当前用户对Python安装目录、Spark目录拥有读写权限;尝试以管理员身份启动cmd,再运行脚本,避免权限不足导致Worker进程启动失败。

3. 修复Hadoop winutils依赖

Windows下Spark依赖Hadoop的winutils.exe组件,需确认:

  • HADOOP_HOME指向的目录下存在bin/winutils.exe(版本需与Hadoop 3.3.6匹配)
  • HADOOP_HOME/bin已添加至系统PATH环境变量
  • 手动执行winutils.exe,确认无报错弹出

4. 获取详细崩溃日志

Spark Worker崩溃通常有更具体的错误信息,可通过以下方式获取:

  • 运行脚本时添加--verbose参数,查看Python Worker启动时的控制台输出
  • 检查%TEMP%\spark-*临时目录下的日志文件,找到Python Worker的stderr输出,定位具体崩溃原因

5. 显式指定Python路径

在代码中直接指定Python路径,避免环境变量冲突:

conf = SparkConf().setAppName('Read File') \
    .set('spark.pyspark.python', 'C:/Python311/python.exe') \
    .set('spark.pyspark.driver.python', 'C:/Python311/python.exe')
sc = SparkContext.getOrCreate(conf=conf)

注意路径使用正斜杠/或双反斜杠\\。

6. 测试最简代码排除文件问题

运行无外部文件依赖的最简代码,验证环境是否正常:

from pyspark import SparkConf, SparkContext

conf = SparkConf().setAppName('Test')
sc = SparkContext.getOrCreate(conf=conf)
rdd = sc.parallelize(['a b c', 'd e f'])
rdd2 = rdd.map(lambda x: x.split(' '))
print(rdd2.collect())

如果这段代码正常运行,说明问题出在data1.txt的内容(如特殊字符、编码问题);若仍报错,继续排查环境配置。

内容的提问来源于stack exchange,提问作者Roterun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 09:51:05