Amazon の Elastic Map Reduce を使用して、Google ngrams データセットをいじろうとしています。http://aws.amazon.com/datasets/8172056142375670にパブリック データセットがあり、Hadoop ストリーミングを使用したいと考えています。
入力ファイルについては、「Amazon S3 の単一のオブジェクトにデータセットを保存します。ファイルは、ブロック レベルの LZO 圧縮を使用したシーケンス ファイル形式です。シーケンス ファイルのキーは、LongWritable として保存されたデータセットの行番号であり、値は、TextWritable として保存された生データです。"
これらの入力ファイルを Hadoop ストリーミングで処理するには、何をする必要がありますか?
引数に追加の「-inputformat SequenceFileAsTextInputFormat」を追加しようとしましたが、これはうまくいかないようです。何らかの理由でジョブが失敗し続けます。私が見逃している他の議論はありますか?
マッパーとリデューサーの両方として非常に単純な ID を使用してみました
#!/usr/bin/env ruby
STDIN.each do |line|
puts line
end
しかし、これは機能しません。