尚硅谷电商数仓 Flume写入hdfs报错

Posted 刘润森!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尚硅谷电商数仓 Flume写入hdfs报错相关的知识,希望对你有一定的参考价值。

使用Flume消费kafka中数据,sink到hdfs中出现数据压缩格式支持错误;

java.lang.IllegalArgumentException: Unsupported compression codec lzop.  Please choose from: [None, BZip2Codec, DefaultCodec, DeflateCodec, GzipCodec, Lz4Codec, SnappyCodec, ZStandardCodec]
	at org.apache.flume.sink.hdfs.HDFSEventSink.getCodec(HDFSEventSink.java:345)
	at org.apache.flume.sink.hdfs.HDFSEventSink.configure(HDFSEventSink.java:248)

锁定关键词 LZO

hadoop本身并不支持lzo压缩,故需要使用twitter提供的hadoop-lzo开源组件。

core-site.xml增加配置支持LZO压缩

<configuration>
    <property>
        <name>io.compression.codecs</name>
        <value>
            org.apache.hadoop.io.compress.GzipCodec,
            org.apache.hadoop.io.compress.DefaultCodec,
            org.apache.hadoop.io.compress.BZip2Codec,
            org.apache.hadoop.io.compress.SnappyCodec,
            com.hadoop.compression.lzo.LzoCodec,
            com.hadoop.compression.lzo.LzopCodec
        </value>
    </property>

    <property>
        <name>io.compression.codec.lzo.class</name>
        <value>com.hadoop.compression.lzo.LzoCodec</value>
    </property>
</configuration>

上传 hadoop-lzo-0.4.20.jar 到 hadoop-3.1.3/share/hadoop/common/,也可以将这个jar拷贝到自己flume的lib目录下

以上是关于尚硅谷电商数仓 Flume写入hdfs报错的主要内容,如果未能解决你的问题,请参考以下文章

尚硅谷电商数仓 Flume写入hdfs报错

SpringCloud Alibaba 实战,来自尚硅谷电商项目理解

电商数仓——(师承尚硅谷)大数据实战项目

MAC自学编程----电商数仓(以尚硅谷为例)

尚硅谷基于阿里云搭建数据仓库(实时)项目视频发布!

电商数仓flume