Я пытаюсь создать Python UDF в Amazon Redshift, и я успешно создал UDF без ошибок.Я также успешно создал необходимую библиотеку для этого UDF.Но когда я выполняю UDF, я получаю ошибку:
Нет модуля с именем pyffx.Пожалуйста, посмотрите svl_udf_log для получения дополнительной информации
Я скачал библиотеку из pypi.org
и загрузил ее в Amazon S3.Это ссылка, которую я использовал для загрузки библиотеки:
https://pypi.org/project/pyffx/#files
create library pyffx
language plpythonu
from 's3://aws-bucket/tmp/python_module/pyffx-0.3.0.zip'
credentials
'aws_iam_role=iam role'
region 'us-east-1';
CREATE OR REPLACE FUNCTION schema.ffx(src VARCHAR)
RETURNS VARCHAR
STABLE
AS $$
import pyffx
src = unicode(src)
value=(src)
l=len(value)
e = pyffx.String(b'secret-key', alphabet='abcedefghijklmnopqrstuvwxyz123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ', length=l)
return e.encrypt(value)
$$ LANGUAGE plpythonu;