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

AWS Glue 4.0中Pandas无法导入:报_bz2模块缺失错误求助

解决AWS Glue 4.0中导入Pandas报_bz2模块缺失的问题

问题原因

AWS Glue 4.0基于Python 3.10构建,默认运行环境未预装_bz2模块的系统级依赖;而Glue 3.0基于Python 3.7,该依赖已包含在默认环境中,因此出现版本间的功能差异。

解决方案

方案1:通过作业附加参数安装依赖

在Glue作业的作业参数配置中添加以下参数:

  • 参数键:--additional-python-modules
  • 参数值:pandas,bz2file
    (若需指定版本,可写成pandas==1.5.3,bz2file==0.98)

Glue会自动下载并安装这些依赖,无需手动处理环境配置。

方案2:脚本内手动安装依赖(临时测试场景)

在作业脚本开头添加以下代码,先补全缺失依赖再导入Pandas:

import subprocess
import sys

# 更新pip并安装bz2file
subprocess.check_call([sys.executable, "-m", "pip", "install", "--upgrade", "pip"])
subprocess.check_call([sys.executable, "-m", "pip", "install", "bz2file"])

# 导入Pandas
import pandas as pd

方案3:自定义Glue镜像(长期稳定场景)

基于官方Glue 4.0镜像构建包含libbz2-dev依赖的自定义镜像,步骤如下:

  1. 创建Dockerfile:
FROM amazon/aws-glue-libs:glue_libs_4.0.0_image_01
RUN apt-get update && apt-get install -y libbz2-dev
RUN pip install pandas
  1. 构建镜像并推送至ECR仓库
  2. 在Glue作业配置中选择自定义镜像运行

注意事项

  • 使用附加模块时,需确保作业的IAM角色拥有S3访问权限(Glue会将依赖包临时存储在默认S3桶中)
  • 自定义镜像需遵循AWS Glue官方规范配置相关参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 07:50:28