我们来看一下wordCount示例:
input_lines = LOAD '/tmp/my-copy-of-all-pages-on-internet' AS (line:chararray);
-- Extract words from each line and put them into a pig bag
-- datatype, then flatten the bag to get one word on each row
bag_words = FOREACH input_lines GENERATE FLATTEN(TOKENIZE(line)) AS word;
是否可以序列化“bag_words”变量,以便每次我们想要执行脚本时都不必重建整个包?
感谢。
答案 0 :(得分:2)
STORE bag_words INTO 'some-output-directory';
然后稍后阅读它以跳过foreach generate,flatten,tokenize。
答案 1 :(得分:0)
您可以使用STORE命令输出pig中的任何别名:您可以使用标准格式(如CSV)或编写您自己的PigLoader类来实现任何特定行为。然后,您可以在单独的脚本中加载此输出,从而绕过初始LOAD。