如果我使用org.apache.hadoop.mapreduce(new)api,如何配置hadoopmapreduceMap器输出压缩?

thigvfpy  于 2021-06-04  发布在  Hadoop
关注(0)|答案(1)|浏览(341)

有没有可能在新服务器上打开Map器输出压缩 mapreduce 如果是的话,你能告诉我怎么做吗?我看到很多这样做的例子是基于 hadoop.mapred.JobConf 但没有人 mapreduce 应用程序编程接口。
如果无法通过配置 new 我能做点什么让它工作吗?

btxsgosb

btxsgosb1#

可以使用以下代码启用Map输出压缩:

public static void enableMapOutputCompress(Job job) {
    job.getConfiguration().setBoolean("mapred.compress.map.output", true);
    job.getConfiguration().setClass("mapred.map.output.compression.codec",
            SnappyCodec.class, CompressionCodec.class);
}

你可以改变 org.apache.hadoop.io.compress.SnappyCodec 其他压缩类,例如: org.apache.hadoop.io.compress.GzipCodec , org.apache.hadoop.io.compress.LzoCodec .
我建议使用snappycodec。

相关问题