如果我在 Pig 中有一堆东西,就像这样:
datas = load './data.txt' using PigStorage( '\t');
list = load './frobdata.txt' using PigStorage();
我想将这些传递给 UDF,如下所示:
register './enfrobinate.js' using javascript as frob;
frobbed = foreach datas generate flatten( frob.enfrobinate( list, $0 ) );
我似乎找不到可用于将列表传递给 javascript 的原型,而且 Pig 文档对 Javascript UDF 的数据类型并不十分清楚。
我知道cross
在猪。这不是我需要的(它给了我一个笛卡尔积。这没关系,除非我们开始得到非常大的列表。在这种情况下,“列表”是几千个项目,数据是数百万个项目。)