flume介紹及使用
阿新 • • 發佈:2018-12-29
1、flume是一個分散式的海量日誌的高效收集、聚合、移動/傳輸的框架。它既可以收集為離線資料,也可以收集到流處理系統。
2、Agent <== 一個Flume的最核心的元件
3、flume三大核心元件
a.Source:負責從源端採集資料,常用的Source有exec/Spooling Directory(監控資料夾)/Taildir Source/NetCat
b.Channel:負責快取從Source端來的資料,常用的Channel有Memory/File
c.Sink:負責將從Channel而來的資料寫到目標端,常用的Sink有HDFS/Logger/Avro/Kafka
Source+Channel+Sink=Agent,資料以event的形式從Source傳送到Sink端
4、常用場景
Flume ==> HDFS ==> BATCH ......
Flume ==> Kafka ==> Streaming/Storm/Flink .....
./flume-ng --help
6、小檔案和調優
hdfs.rollInterval 根據時間滾動
hdfs.rollSize 根據檔案大小滾動
hdfs.rollCount 根據event數量滾動
hdfs.batchSize
hdfs.codeC
hdfs.fileType