flume 寫入hdfs 採用lzo 格式 教程

2021-08-04 03:17:57 字數 933 閱讀 4670

問題環境: hadoop2.7.3  和 flume 1.7.0

1.首先我的flume是單獨部署在一台主機的。沒該主機沒有部署hadoop

所以sink寫入hdfs的時候 直接報錯。於是我上傳了hadoop2.x.x 版本 配置了下hadoop_home path 環境變數。搞定。

2.在編寫flume 寫入hdfs的時候得知公司hdfs用的是lzo的檔案格式儲存

我直接用原生的flume 在編寫屬性

a1.sinks.s1.hdfs.filetype = compressedstream

a1.sinks.s1.hdfs.codec = lzo

的時候  啟動flume報錯

差了一番資料 總結出乙個比較簡單有效的方法,分兩步

第一步:就是把用lzo格式儲存檔案的hadoop集群中 的core-site.xml 檔案直接拿過來放到flume/conf下面

主要是用裡面

io.compression.codecs

com.hadoop.compression.lzo.lzocodec,

com.hadoop.compression.lzo.lzopcodec

io.compression.codec.lzo.class

com.hadoop.compression.lzo.lzocodec

這些屬性告訴flume 解壓的類在**

第二部 上你們集群搜尋下

find / -name hadoop-lzo-*

/share/hadoop/common/hadoop-lzo-0.x.x-snapshot.jar

肯定有類似於這樣的jar

sz hadoop-lzo-0.x.x-snapshot.jar 下來 

rz 到你部署flume機器上的 hadoop 的/share/hadoop/common/ 下

搞定

Flume 之資料寫入hdfs

此案例前提 hadoop已經搭建完成 可用偽分布式 啟動hadoop start all.sh 1.在 home software flume 1.9.0 job 目錄下建立hdfs.template.conf並配置如下資訊 a3.sources r3 a3.sinks k3 a3.channels...

Flume 採集目錄到HDFS

需求某服務 的某特定目錄下,會 斷產生新的檔案,每當有新檔案出現,就需要把檔案採集到hdfs中去 思 根據需求,首先定義以下3大要素 1.資料來源元件,即source 監控檔案目錄 spooldir 1.監視乙個目錄,只要目錄 現新檔案,就會採集檔案中的內容 2.採集完成的檔案,會被agent自動新...

Flume採集檔案到HDFS

在flume和hadoop安裝好的情況下 1.遇到的坑 在安裝hadoop時,配置 core site.xml 檔案一定要注意。fs.defaultfs name hdfs master 9000 value property 上述的value值使用的是主機名稱 master 或者ip位址,不能使用...