【Flume】Flume簡單介紹

1. 概述

Flume是一個分佈式、可靠和高可用的海量日誌採集、聚合和傳輸系統。
Flume可以採集多種數據,如:文件、socket數據包、文件夾、Kafka等,還可以將採集到的數據輸出到HDFS、HBase、Hive等多種存儲系統。
[Flume官方網站](http://flume.apache.org/)有更詳細的介紹。

2. 運行機制

Flume中最核心部分是agent,每個agent都是一個JVM進程。
agent由三個組件組成:
source: 採集組件,用於獲取數據;
sink:下沉組件,用於將數據傳輸至下一級agent或寫入存儲系統;
channel:傳輸通道組件,用於將source採集的數據傳輸至sink;

3. 採集方式

根據實際情況的複雜程度,可以配置多種Flume處理方式:

3.1 單agent

在這裏插入圖片描述

3.2 agent串聯

數據可以由一個agent發往另一個agent,agent位於不同主機時,使用avro類型連接兩agent。
在這裏插入圖片描述

3.3 彙總多個agent

也可以由多個agent採集不同源端數據,彙總至一個agent後寫入某個存儲系統。
在這裏插入圖片描述

3.4 發往多目的地

同一份源端數據,可以通過多個agent傳輸,分別輸入不同目的地。
在這裏插入圖片描述

總結
  1. Flume主要用於海量日誌傳輸,可靈活配置agent實現多種傳輸方案。
  2. agent三組件: source、sink、channel。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章