0

在典型的猪字数示例中,我很好奇人们如何优化按字分组可能导致包含许多(许多)元素的袋子的条件。

例如:

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 在处理时挂起很长时间。可以做些什么来优化这个?

4

1 回答 1

0

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

在您的示例中,它显然会引入一个组合器,它将每个单词的键值对数量减少到几个或最好情况下只有一个。因此,在减速器方面,每个给定单词不会有大量的键/值。

于 2013-04-27T05:53:56.010 回答