1
shaohan0228 2018-08-23 10:05:54 +08:00
wordcount 只照着基本例子超了一遍,key 文件名; value Map key 为单词,value 为词频,这样行么
|
2
louxinbo OP @shaohan0228 谢谢回复。断句有点迷糊。能不能再解释下。谢了
|
3
louxinbo OP 我的 reducer 的代码,麻烦大家给看看,到底哪儿出错了。reduce 输入的 key 就是单词,输入的 values 就是文件名。
public class IntSumReducer extends Reducer<Text,Text,Text,Text> { private Text result = new Text(); public void reduce(Text key, Iterable<Text> values, Context context ) throws IOException, InterruptedException { Map<String,Integer> m = new HashMap<String,Integer>(); int count; for (Text val : values) { if(m.get(val.toString())!=null) { count = m.get(val.toString())+1; }else { count = 1; } m.put(val.toString(), count); } result.set(m.toString()); context.write(key, result); } } |
4
jieee 2018-08-23 11:09:52 +08:00 1
词和文件名做 key
|
6
cangxiao 2019-05-26 09:44:07 +08:00
我觉得这个 reduce 没有什么问题啊,为什么会出现{{a.txt=1}=1,{ b.xtx=1}=1}这种结果呢?楼主现在应该是知道了吧,跟我讲讲吧!
|