2

プロパティmapred.textoutputformat.separatorに valueを設定しました\001。しかし、MR ジョブを実行すると、例外がスローされます。

文字参照「」は無効な XML 文字です。

私を助けてください。

4

1 に答える 1

1

私は解決策を得ました。その理由は、「\001」文字シーケンスまたはその他の Unicode 文字を使用すると、オブジェクトのシリアル化中に無効な形式に変換されていたためです。

したがって、解決策は、Base64 を使用して文字をエンコードし、TextOutputFormat クラスの getRecordWriter メソッドをオーバーライドしてから、そこでデコードすることでした (Base64.decodeBase64)。

これは機能します。

于 2012-07-11T09:06:26.287 に答える