Pig流式处理\u python UDF和传送文件或压缩档案

Pig流式处理\u python UDF和传送文件或压缩档案,python,hadoop,apache-pig,Python,Hadoop,Apache Pig,我正在使用Pig和streaming_python udf,我想知道是否有某种方法可以将我开发的文件与我的streaming_python udf的注册一起发送 当我使用Jython或java时,很简单,我可以将所有依赖项放在.jar中,或者使用类似于: REGISTER /home/hadoop/jython_libs/jyson-1.0.2.jar; 不幸的是,这种方法不适用于.py或.zip文件 我还发现,当我使用标准流时,我可以在命令中使用ship,但在这种情况下,我将无法使用stre

我正在使用Pig和streaming_python udf,我想知道是否有某种方法可以将我开发的文件与我的streaming_python udf的注册一起发送

当我使用Jython或java时,很简单,我可以将所有依赖项放在.jar中,或者使用类似于:

REGISTER /home/hadoop/jython_libs/jyson-1.0.2.jar;
不幸的是,这种方法不适用于.py或.zip文件

我还发现,当我使用标准流时,我可以在命令中使用ship,但在这种情况下,我将无法使用streaming_python udf,其中已经实现了从/到pig的序列化和反序列化

我目前正在使用pig,如下所示:

-- load articles
ARTICLES = LOAD 's3://my_articles/articles/*' USING TextLoader as (json);

-- register udfs
REGISTER '/home/hadoop/lda_scripts.py' USING streaming_python AS lda_udfs;

-- transform
TOPICS = foreach ARTICLES generate lda_udfs.transform_json_sparse(json);

-- execute pipeline and print
dump TOPICS;
我也非常关注:

我还从以下方面获得了一些信息: 但我不能通过pip安装引导脚本中的所有软件包,我需要提供一些文件

有没有人有过将自定义Python包和文件发送给工人的经验?有什么简单的方法吗