是否可以在新 API 上打开映射器输出压缩mapreduce,如果可以,请指出如何?我看到很多基于hadoop.mapred.JobConfAPI 的示例,但没有一个基于 API 的示例mapreduce。
如果它不能通过newAPI 进行配置,我可以做些什么让它工作吗?
是否可以在新 API 上打开映射器输出压缩mapreduce,如果可以,请指出如何?我看到很多基于hadoop.mapred.JobConfAPI 的示例,但没有一个基于 API 的示例mapreduce。
如果它不能通过newAPI 进行配置,我可以做些什么让它工作吗?
您可以使用以下代码启用地图输出压缩:
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。