Hadoop Pig - 优化字数

时间:2013-04-27 03:46:36

标签: hadoop mapreduce apache-pig

在规范猪wordcount示例中,我很好奇人们如何处理优化条件,即按字分组可能会导致包含许多(多个)元素的包。

例如:

A = load 'input.txt';
B = foreach A generate flatten(TOKENIZE((chararray)$0)) as word;
C = group B by word;
D = foreach C generate COUNT(B), group;

在C行中,如果有一个单词,让我们说“the”,在输入文件中出现10亿次,这可能导致reducer在处理过程中挂了很长时间。可以做些什么来优化这个?

1 个答案:

答案 0 :(得分:0)

在任何情况下,PIG都会评估是否可以使用组合器,如果是的话,将会有一个组合器。

在你的例子的情况下,它显然会引入一个组合器,它将每个单词的键值对的数量减少到少数或最好只有一个。所以在reducer方面,你不会得到每个给定单词的大量键/值。