タブで区切られた2つのテキスト列を持つファイルがある小さなプロジェクトがあります。マッパーがファイルからそれらを読み取り、2 番目の列をキーとして、最初の列を値としてレデューサーに設定するようにしたいのですが、それを実行できないようです。次に、(キー、値) のペアをレデューサーに渡し、キーごとにすべての値のリストを作成します。
public static class TokenizerMapper extends Mapper<Object, Text, Text, IntWritable> {
private final static IntWritable one = new IntWritable(1);
private Text site = new Text();
private Text tag = new Text();
public void map(Object key, Text value, Context context)
throws IOException, InterruptedException {
StringTokenizer itr = new StringTokenizer(value.toString(), "\t");
while (itr.hasMoreTokens()) {
site.set(itr.nextToken());
tag.set(itr.nextToken());
context.write(tag, site);
}
}
}
回線でエラーが発生していconext.write
ます。どうすればこれを解決できますか?