AWS lambda访问redshift并导入外部库pyregresql

时间:2017-11-06 18:41:23

标签: python amazon-web-services amazon-s3 lambda amazon-redshift

我正在尝试在python中编写一个lambda函数,它将数据从S3存储桶复制到Redshift数据库。

我按照这个例子写了我的代码:

https://github.com/awslabs/amazon-redshift-utils/blob/master/src/UnloadCopyUtility/redshift-unload-copy.py

但是,我无法内联运行lambda函数。

看来为了“导入pg”,我需要安装pyGreSql2库,它依赖于PostGreSql库。

将它们包含在部署包中的正确方法是什么?

我正在使用Mac,并创建了一个docker来准备lambda部署包。

当我使用以下命令时,PyGreSQL已成功安装,但是当我在lambda上传zip文件并进行测试时出现错误。

$sudo apt-get install libpq-dev python-dev
$pip install -t . PyGreSQL

lambda上的错误:

Unable to import module 'lambda_function': libpq.so.5: cannot open shared object file: No such file or directory

使用PyGreSQL成功部署lambda函数的正确方法是什么?请注意,出于各种原因,我不想使用psycopg2库。

感谢。 Swagatika

0 个答案:

没有答案