2

我正在使用 spooldir 源将 .gz 文件从 SpoolDirectory 移动到 HDFS。我正在使用以下配置,

===========================

a1.channels = ch-1  
a1.sources = src-1  
a1.sinks = k1  

a1.channels.ch-1.type = memory  
a1.channels.ch-1.capacity = 1000  
a1.channels.ch-1.transactionCapacity = 100  

a1.sources.src-1.type = spooldir  
a1.sources.src-1.channels = ch-1  
a1.sources.src-1.spoolDir = /path_to/flumeSpool  
a1.sources.src-1.deserializer=org.apache.flume.sink.solr.morphline.BlobDeserializer$Builder  
a1.sources.src-1.basenameHeader=true  
a1.sources.src-1.deserializer.maxBlobLength=400000000  

a1.sinks.k1.type = hdfs  
a1.sinks.k1.channel = ch-1  
a1.sinks.k1.hdfs.path = hdfs://{namenode}:8020/path_to_hdfs  

a1.sinks.k1.hdfs.useLocalTimeStamp = true  
a1.sinks.k1.hdfs.rollInterval =100  
a1.sinks.k1.hdfs.rollCount=0  
a1.sinks.k1.hdfs.rollSize=0  
a1.sinks.k1.hdfs.fileType = CompressedStream  
a1.sinks.k1.hdfs.codeC=gzip  
a1.sinks.k1.hdfs.callTimeout=120000  

=========================================

所以文件确实会传输到 HDFS,但它会在末尾附加 time_in_millis.gz 扩展名。此外,当我尝试在 HDFS 中压缩文件(通过终端复制)时,它会在其中显示未知字符。所以不确定发生了什么。

  1. 我想在传输到 HDFS 后保持相同的文件名
  2. 我希望能够解压缩文件并读取内容

有人可以帮忙吗?

4

0 回答 0