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

EMR Workspace中PySpark Notebook执行Python命令异常:无响应或报错

问题分析与解决

pandas ModuleNotFoundError 问题

原因

%pip list显示的是EMR Studio Notebook自身Python环境的包,但PySpark代码实际运行在EC2集群节点的独立Python环境中。集群节点默认未安装pandas,因此执行代码时会触发模块找不到的错误。另外,pandas读取S3路径还依赖s3fs模块,即便安装了pandas,缺少该依赖也会导致后续报错。

解决办法

  • 集群启动时预装(推荐):创建EMR集群时添加Bootstrap动作,用脚本在所有节点安装依赖:
    sudo pip install pandas s3fs
    
  • 临时安装(重启集群失效):通过EMR Studio连接集群主节点,执行上述安装命令
  • Notebook环境关联:在Notebook中执行%pip install --user pandas s3fs,然后重启kernel,确保PySpark使用Notebook的Python环境(部分EMR版本支持此方式)

boto3无响应问题

原因

并非IAM权限问题,而是网络连通性故障。当EC2集群无法和S3服务建立连接时,boto3会持续尝试连接导致无响应;只有成功连接到S3服务但权限不足时,才会返回权限错误。

排查与解决

  • 检查集群EC2节点的安全组出站规则:确保允许HTTPS(443端口)流量访问外部,或针对S3的前缀列表配置放行
  • 检查VPC的NACL规则:出站方向需允许443端口流量
  • 私有子网环境需确认:要么配置S3 VPC端点,要么有可用的NAT网关用于访问公网S3
  • 测试连通性:在集群主节点执行curl https://s3.amazonaws.com,验证是否能正常响应

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 08:20:13