作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个Pig程序,试图计算两个袋子之间的最小中心。为了使它起作用,我发现我需要将袋子打包成单个数据集。整个操作需要很长时间。我想从UDF内的磁盘中打开一个袋子,或者能够将另一个关系传递到UDF中而无需COGROUP ...
码:
# **** Load files for iteration ****
register myudfs.jar;
wordcounts = LOAD 'input/wordcounts.txt' USING PigStorage('\t') AS (PatentNumber:chararray, word:chararray, frequency:double);
centerassignments = load 'input/centerassignments/part-*' USING PigStorage('\t') AS (PatentNumber: chararray, oldCenter: chararray, newCenter: chararray);
kcenters = LOAD 'input/kcenters/part-*' USING PigStorage('\t') AS (CenterID:chararray, word:chararray, frequency:double);
kcentersa1 = CROSS centerassignments, kcenters;
kcentersa = FOREACH kcentersa1 GENERATE centerassignments::PatentNumber as PatentNumber, kcenters::CenterID as CenterID, kcenters::word as word, kcenters::frequency as frequency;
#***** Assign to nearest k-mean *******
assignpre1 = COGROUP wordcounts by PatentNumber, kcentersa by PatentNumber;
assignwork2 = FOREACH assignpre1 GENERATE group as PatentNumber, myudfs.kmeans(wordcounts, kcentersa) as CenterID;
最佳答案
切尔沃
存钱 jar 中有一个UDF,它或多或少地执行您想要的操作,称为LookupInFiles。查看源代码,可以很轻松地转换为您的需求。
http://svn.apache.org/viewvc/hadoop/pig/trunk/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/evaluation/string/LookupInFiles.java
如果您还有其他问题,文档建议等,请通过电子邮件发送列表。
关于hadoop - 如何从Yahoo PigLatin UDF内将文件加载到DataBag中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2721902/
我是一名优秀的程序员,十分优秀!