Author Archives: coder4

Maven使用shade插件实现包的自动重命名,以解决依赖冲突

最近在写一个hadoop的job,其中依赖了guava,我需要的版本是27.2-jre

然而,不幸的是,Hadoop集群上是2.7.2,其中也有guava版本,11.0.2

更坑的是,guava在16之后有break change,无法向下兼容。

导致不管怎么运行,都会出现:
Error: com.google.common.hash.Funnels.stringFunnel(Ljava/nio/charset/Charset;)Lcom/google/common/hash[......]

继续阅读

定制Hadoop的MapReduce任务的FileOutputFormat

需求:Reduce输出特殊的格式结果
例如:如Reducer的结果,压到Guava的BloomFilter中
import com.google.common.hash.BloomFilter;
import com.google.common.hash.Funnels;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.h[......]

继续阅读