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

PySpark写入parquet文件失败,报错Hadoop bin目录不存在如何解决?

问题排查与解决步骤

核心问题定位

从报错信息可直接确定根因:系统查找的Hadoop bin路径为C:\Users\admin\Downloads\NewSpark\hadoop\bin\bin,比实际正确路径多拼接了一层bin目录,导致文件找不到。
读取CSV正常是因为读本地小文件不需要调用Hadoop的文件系统实现,写入操作必须依赖Hadoop相关接口,所以才会触发路径校验报错。

具体排查操作

  • 检查系统环境变量配置
    • 确认HADOOP_HOME变量值是否配置为Hadoop根目录,正确值应为C:\Users\admin\Downloads\NewSpark\hadoop,如果当前值末尾带了\bin,直接删除末尾的\bin即可
    • 检查系统Path变量中是否存在%HADOOP_HOME%\bin项,确保该项配置正确,没有重复写bin目录
  • 检查Spark自定义配置
    查看代码中调用的get_spark_app_config()方法返回的配置、或者spark-defaults.conf配置文件中,是否手动设置了hadoop.home.dir参数,如果该参数值末尾带了\bin,修正为Hadoop根目录路径即可
  • 校验依赖文件完整性
    确认C:\Users\admin\Downloads\NewSpark\hadoop\bin目录下存在对应版本的winutils.exe文件,Windows环境下Spark写入操作必须依赖该文件,缺失的话下载对应Hadoop版本的winutils放入bin目录即可

生效验证

所有配置修改完成后,重启运行代码的IDE或者命令行终端,重新执行代码即可正常写入parquet文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 10:18:03