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

Python3.9环境下AWS Glue部署Snowflake Connector报错求助

解决方案:AWS Glue Python 3.9 下 Snowflake Connector 适配问题

1. 排查包的核心兼容性

你之前使用的是cp36版本的wheel包,完全不适配Python 3.9,这是报错的直接原因。即使后续尝试了适配3.9的包,也要确保包的平台标识是manylinux2014_x86_64——因为AWS Glue 3.0(Python 3.9)基于Amazon Linux 2运行,仅支持该平台标识的wheel。

2. 下载正确的Snowflake Connector包

选择支持Python 3.9的版本(推荐2.8.0及以上,兼容性更稳定),下载格式为:
snowflake_connector_python-<版本号>-cp39-cp39-manylinux2014_x86_64.whl

3. 补充AWS Glue缺失的依赖

Glue默认环境缺少Snowflake Connector运行所需的部分依赖,需一并打包上传到S3:

  • cryptography(需适配cp39、manylinux2014的版本)
  • pycryptodomex
  • boto3(若使用IAM角色认证Snowflake)
  • azure-storage-blob(若涉及Azure存储对接)

将所有依赖包和Snowflake Connector的wheel放在同一个S3路径下,在Glue作业的Python library path中指定该路径。

4. 本地验证包可用性

在本地创建Python 3.9的虚拟环境,模拟Amazon Linux 2环境,执行以下命令验证包是否正常:

pip install snowflake_connector_python-<版本号>-cp39-cp39-manylinux2014_x86_64.whl

若本地安装成功,说明包本身无问题,问题出在Glue的配置或依赖缺失。

5. 确认Glue作业配置

检查Glue作业的Python version是否设置为3.9(对应Glue 3.0),避免版本配置错误。

6. 源码编译适配包(极端情况)

如果找不到现成的适配wheel包,可在Amazon Linux 2环境下编译源码:

# 创建Python3.9虚拟环境
python3.9 -m venv glue-venv
source glue-venv/bin/activate

# 编译wheel包
pip wheel snowflake-connector-python==<版本号> --no-binary :all:

将编译生成的wheel包上传到S3使用。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 02:45:23