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

使用SqlToS3Operator时遇pandas缺失,MWAA配置后仍报错

解决MWAA中SqlToS3Operator的pandas依赖报错问题

问题重现

使用SqlToS3Operator添加任务时触发以下报错:

ModuleNotFoundError: No module name 'pandas'
... trace...
Exception: pandas library not installed. run: pip install 'apache-airflow-providers-common-sql[pandas]'

涉事任务定义:

get_events = SqlToS3Operator(
  task_id='get_events',
  ...
  query='select columns from event where greatest(created_at, updated_at) > {{ ts }}',
  dag=dag,
)

已配置的requirements.txt内容:

apache-airflow>=2.9.0
apache-airflow-providers-amazon>=8.23.0
apache-airflow-providers-common-sql>=1.11.1
pandas>=2.1.4

已更新MWAA配置并重启环境,但报错依旧,其余DAG可正常运行。

解决步骤

  1. 修改requirements.txt的依赖声明
    将apache-airflow-providers-common-sql>=1.11.1替换为apache-airflow-providers-common-sql[pandas]>=1.11.1。
    原因:apache-airflow-providers-common-sql的pandas支持属于额外依赖,需要显式声明[pandas]后缀,MWAA才会自动安装该包关联的pandas依赖(即使单独声明pandas,也可能因包的依赖逻辑导致未正确关联)。

    修改后的requirements.txt:

    apache-airflow>=2.9.0
    apache-airflow-providers-amazon>=8.23.0
    apache-airflow-providers-common-sql[pandas]>=1.11.1
    pandas>=2.1.4
    
  2. 重新上传并触发环境更新

    • 将修改后的requirements.txt上传到MWAA配置中指定的S3依赖路径,确保覆盖旧文件。
    • 再次触发MWAA环境重启,等待10-15分钟让环境完成依赖安装和初始化。
  3. 验证依赖安装状态
    查看MWAA的环境日志(在CloudWatch中),确认apache-airflow-providers-common-sql[pandas]和pandas均成功安装,无报错信息。

额外排查点

  • 确认S3存储桶中requirements.txt的版本是最新的,避免因S3缓存导致旧文件被读取。
  • 检查MWAA执行角色是否拥有读取该S3路径文件的权限。
  • 如果问题持续,可尝试移除单独的pandas>=2.1.4声明,仅保留apache-airflow-providers-common-sql[pandas]>=1.11.1,让包管理器自动处理兼容的pandas版本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 00:05:55