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

PySpark通过s3a加载S3数据报IOStatisticsSource类缺失错误如何解决

错误根因

你遇到的报错核心是Hadoop组件版本不兼容:org.apache.hadoop.fs.statistics.IOStatisticsSource 是Hadoop 3.3.0及以上版本才新增的接口,当你使用的s3a实现依赖(hadoop-aws)版本≥3.3.0,但Spark环境内置的hadoop-common版本低于3.3.0时,就会出现类找不到的问题。

解决步骤
  • 先确认当前Spark绑定的Hadoop版本,执行命令 spark-submit --version,记录输出中标识的Hadoop版本号
  • 下载和上述版本完全一致的两个依赖包:
    • hadoop-aws:s3a协议的官方实现包
    • aws-java-sdk-bundle:和对应hadoop-aws版本匹配的AWS SDK包
  • 依赖加载方式二选一:
    1. 把两个jar包放到Spark安装目录的jars文件夹下,全局生效
    2. 提交作业时通过 --jars hadoop-aws-xxx.jar,aws-java-sdk-bundle-xxx.jar 参数指定加载,单次作业生效
注意事项
  • 禁止单独升级hadoop-aws到高于Spark内置Hadoop的版本,即使是小版本号差异也可能引发依赖冲突
  • 如果是本地PySpark环境,也可以通过pip安装对应版本的依赖包,或者在代码中通过spark.jars配置项指定依赖路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 10:39:01