假设我有一堆从Pig UDF生成的数据包,其中包含几个字符串元组。我如何才能将它们全部从数据包中取出,并简单地使每个String成为自己的“行”数据。
databags = FOREACH data GENERATE pigUdfThatMakesDataBags(data::someText);strings = FOREACH databags { ??? };

最佳答案

databags = FOREACH data GENERATE pigUdfThatMakesDataBags(data::someText);
datatuples = FOREACH databags FLATTEN($0);      -- Bag to Tuples
strings = FOREACH datatuples FLATTEN(TOBAG(*)); -- Tuples to Tokens'
DUMP strings;

关于hadoop - “Flattening” Pig中的一个数据袋,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35609345/

10-10 04:41