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