0

「The Definitive Guide to Hadoop」によると、入力形式TextInputFormatはキーと値のペアを提供します(k, v) = (byte offset, line)。ただし、MRJob では、マッパー入力のキーは常にNoneです。バイト オフセットをキーとして取得するのは簡単なはずです。これは TextInputFormat が行うことだからです。どうすればこれを入手できますか?

環境変数「map_input_start」を使用して自分でバイトオフセットを計算できることは知っていますが、これは問題を引き起こしているため、オフセットをキーとして取得するだけのより簡単な方法で実行したいと考えています。

4

2 に答える 2

0

次のシグネチャを使用してマッパー クラスで map メソッドを定義しないと、キーとしてバイト オフセットが与えられます。

public void map(LongWritable key,Text value,OutputCollector<>,Reporter) 
于 2012-07-11T05:38:40.820 に答える
0

TextInputFormat は Java クラスです...ストリーミングの世界でそれがどのように機能するかわかりません。

于 2012-07-11T14:23:18.037 に答える