【发布时间】:2016-06-20 14:11:34
【问题描述】:
这里我试图在 redshift 中我的用户定义的 python 函数中导入一个库
我创建了一个名为 nltk 的库,如下所示
[CREATE OR REPLACE LIBRARY nltk LANGUAGE plpythonu FROM 's3://nltk.zip' CREDENTIALS 'aws_access_key_id=*****;aws_secret_access_key=****';]
创建后我尝试将其导入到函数中
CREATE OR REPLACE FUNCTION f_function (sentence varchar)
RETURNS VARCHAR STABLE AS $$
from nltk import tokenize
token = nltk.word_tokenize(sentence)
return token $$ LANGUAGE plpythonu;
tokenize 是 nltk 库中的子目录
但是当我尝试通过在表上调用它来运行该函数时
SELECT f_function(text) from table_txt;
我收到这样的错误
亚马逊无效操作:ImportError:没有名为 nltk 的模块。请查看 svl_udf_log 了解更多信息
详情:
-----------------------------------------------------------
错误:ImportError:没有名为 nltk 的模块。请查看 svl_udf_log 了解更多信息
代码:10000
上下文:UDF
查询:69145
位置:udf_client.cpp:298
进程:query0_21 [pid=3165]
谁能帮助我我哪里做错了?
【问题讨论】:
-
你用nltk变成redshift了吗????