學習筆記--Flume

Apache Flume是一個分佈式、可信任的彈性系統。

功能:

  • 支持在日誌系統中定製各類數據發送方,用於收集數據
  • Flume提供對數據進行簡單處理,並寫到各種數據接收方的能力

多種數據來源:

  1. server  log : tail  -n 10000  a.log  |  grep fatal / warning
  2. http : url
  3. netcate :   ip  : port
  4. filesystem : 目錄下,一旦有數據變化
  5. Console、RPC、Text、Tail、Syslog、Exec等 

Flume外部架構

log  server與agent是1:1,一個collector對應多個agent。然後將收集數據存入HDFS或Hbase上

 Flume使用Event對象來作爲傳遞數據的格式,是內部數據傳輸的最基本單元

Event有兩部分:header(可有可無)和body

代理(Flume  Agent)

flume內部有一個或多個Agent,每一個Agent是一個獨立守護進程

Agent主要由source、channel、sink組成

  • source:輸入,對接各種數據源
  • Channel:緩存(file,memory)
  • sink:輸出,對接各種存儲
  • 另外兩個可選組件
  1. interceptor(攔截器)
  2. selector(選擇器)

                  --複製(默認):replicating

                  --複用:multiplexing

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章