map o/p と map-reduce o/p を圧縮するには、Snappy を使用する必要があります。さらに、これは分割可能でなければなりません。
私がオンラインで勉強したように、Snappy に分割可能な o/p を書き込むには、コンテナのような形式で使用する必要があります。
どうすればいいのか教えてください。オンラインでいくつかの例を見つけようとしましたが、うまくいきませんでした。Hadoop v0.20.203 を使用しています。
ありがとう。ピユシュ
map o/p と map-reduce o/p を圧縮するには、Snappy を使用する必要があります。さらに、これは分割可能でなければなりません。
私がオンラインで勉強したように、Snappy に分割可能な o/p を書き込むには、コンテナのような形式で使用する必要があります。
どうすればいいのか教えてください。オンラインでいくつかの例を見つけようとしましたが、うまくいきませんでした。Hadoop v0.20.203 を使用しています。
ありがとう。ピユシュ
出力用
conf.setOutputFormat(SequenceFileOutputFormat.class);
SequenceFileOutputFormat.setOutputCompressionType(conf, CompressionType.BLOCK);
SequenceFileOutputFormat.setCompressOutput(conf, true);
conf.set("mapred.output.compression.codec","org.apache.hadoop.io.compress.SnappyCodec");
マップ出力用
Configuration conf = new Configuration();
conf.setBoolean("mapred.compress.map.output", true);
conf.set("mapred.map.output.compression.codec","org.apache.hadoop.io.compress.SnappyCodec");
新しい API OutputFormat では、構成用ではなく、ジョブ用にインストールします。次に、最初の部分は次のようになります。
Job job = new Job(conf);
...
SequenceFileOutputFormat.setOutputCompressionType(job, CompressionType.BLOCK);
SequenceFileOutputFormat.setCompressOutput(job, true);
conf.set("mapred.output.compression.codec","org.apache.hadoop.io.compress.SnappyCodec");