gpt4 book ai didi

hadoop - 是 FileOutputFormat.setCompressOutput(job, true);选修的?

转载 作者:可可西里 更新时间:2023-11-01 15:11:26 27 4
gpt4 key购买 nike

在Hadoop程序中,我尝试对结果进行压缩,我写了如下代码:

FileOutputFormat.setCompressOutput(job, true); 
FileOutputFormat.setOutputCompressorClass(job, GzipCodec.class);

结果被压缩了,当我删除第一行时:

FileOutputFormat.setCompressOutput(job, true); 

再次执行程序,结果还是一样,就是上面的代码

FileOutputFormat.setCompressOutput(job, true);

可选的?该代码的作用是什么?

最佳答案

请参阅FileOutPutFormat.java中的以下方法它在内部调用您已删除的方法调用。

i.e setCompressOutput(conf, true);

这意味着您正在尝试应用 Gzip 编解码器类,然后显然它是指向应压缩输出的代码的指针。不是吗?

/**
* Set whether the output of the job is compressed.
* @param conf the {@link JobConf} to modify
* @param compress should the output of the job be compressed?
*/
public static void setCompressOutput(JobConf conf, boolean compress) {
conf.setBoolean("mapred.output.compress", compress);
}
/**
* Set the {@link CompressionCodec} to be used to compress job outputs.
* @param conf the {@link JobConf} to modify
* @param codecClass the {@link CompressionCodec} to be used to
* compress the job outputs
*/
public static void
setOutputCompressorClass(JobConf conf,
Class<? extends CompressionCodec> codecClass) {
setCompressOutput(conf, true);
conf.setClass("mapred.output.compression.codec", codecClass,
CompressionCodec.class);
}

关于hadoop - 是 FileOutputFormat.setCompressOutput(job, true);选修的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37474967/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com