Flume 總結(三)sources型別-1.9.0新版

聞香識程式碼發表於2020-10-10

Flume 總結(三)sources型別

1. 官網

  1. http://flume.apache.org/releases/content/1.9.0/FlumeUserGuide.html
  2. 注意區分flume版本在這裡插入圖片描述
    在這裡插入圖片描述

2. sources

在這裡插入圖片描述

  1. avro sources
    在這裡插入圖片描述
    在這裡插入圖片描述

這裡可以看出,這裡使用的avro通用序列化協議,可以組成agent之間的級聯
引數最重要就是黑色的, 埠和ip地址
注意這裡涉及到攔截器和選擇器
攔截器可以對資料做清洗,篩選,打標記
選擇器可以根據event的標記,對資料做分發處理,可以有各種分發邏輯,如replicating和multiplexing等策略

  1. thrift source
    在這裡插入圖片描述
    在這裡插入圖片描述

顧名思義,這裡可以採集來自thrift通用伺服器的資料,可以組成agent之間的級聯
這裡最重要也是埠和ip
注意,這裡也有攔截器和選擇器,具體看1中解釋
這裡涉及到kerberos,這是大資料企業開發中,比較嚴格的許可權管理時,使用的一種許可權管理協議或者工具軟體(它也是一個軟體)
在這裡插入圖片描述

  1. exec source
    在這裡插入圖片描述
    在這裡插入圖片描述

注意,這裡就是監視一個unix或者linux shell命令產生的資料
這裡最重要就是執行的shell 指令
注意,因為這個source是無法進行事務保證的,一旦出錯,資料會丟失,所以官方推薦了另外2個source,taildir source和spooling directory source

  1. JMS Source
    這是和activeMQ訊息佇列元件結合使用的,顧名思義。
    在這裡插入圖片描述
  2. JMS message converter在這裡插入圖片描述
  3. SSL and JMS Source在這裡插入圖片描述
  1. JMS在這裡插入圖片描述
    注意,這裡涉及到安全加密協議,SSL,實際企業大資料開發中,如果涉及到保險,銀行等金融領域,很多時候如果資料不是內網傳輸,而是公網傳輸,一般都會採用加密協議來保證資料安全性。雖然這些資料主要是日誌資料,但還是會進行加密處理。
  1. Spooling Directory Source在這裡插入圖片描述
    在這裡插入圖片描述

這是一個可靠的source,可以保證資料不丟失,但可能重複
重點是資料夾的監視,資料夾中檔案不能再放進去之後再改動或者修改名字,或者同名檔案。所以適合已經產生的固定一批日誌檔案的採集。
注意這裡也有攔截器和選擇處理
這裡還有采集後檔案的處理策略,還有遞迴查詢,還有batchSize,也就是一批讀取採集數量,一般這類檔案採集框架,很少會一條一條處理,一般都是一批一批處理,這樣更加高效。具體可以類比java的緩衝流進行讀寫,包括linux檔案流中的緩衝區機制,都是一樣的道理。通過批處理來降低磁碟IO。這一點只要硬碟達不到記憶體的讀寫速度,就會一直存在。

  1. Taildir Source在這裡插入圖片描述
  2. 在這裡插入圖片描述

不能讀取二進位制檔案
資料讀取是可靠的,對檔案的偏移量會進行記錄來保證失敗後可以重試‘
這裡可以監視檔案組,也就是可以監視資料夾以及其中多個檔案
可以設定batchSize,可以根據檔案對event中設定header標記,這裡很適合一些公司中只有一個日誌叢集,日誌檔案並沒有很好進行劃分的場景,這時候只要不同業務日誌放在不同資料夾或者檔案中,就可以通過這裡設定header中key,然後使用selector選擇器進行資料區分分發

  1. Twitter 1% firehose Source (experimental)
    在這裡插入圖片描述

這是一個實驗性質特性,瞭解即可,不要企業生產中使用

  1. Kafka Source
    在這裡插入圖片描述

可以讀取kafaka中資料,一般按照topic進行讀取
注意還有過期的特性
如果是kafaka叢集,叢集地址加埠,多個地址使用逗號隔開
注意kafaka中資料也可以使用偏移量,或者叫編號進行讀取。
在這裡插入圖片描述
kafaka中資料讀取的安全策略,可以使用kerberos或者ssl兩種安全協議
注意,在大資料企業開發中,如果涉及到金錢如保險,支付,銀行等領域,如果日誌資料採用公網傳輸採集,這時候一般都會使用安全協議來保證日誌資料傳輸安全性。
在這裡插入圖片描述
在這裡插入圖片描述

  1. NetCat TCP Source在這裡插入圖片描述

簡單的網路資料來源採集,TCP形式資料

  1. NetCat UDP Source在這裡插入圖片描述

簡單的網路資料來源採集,TCP形式資料

  1. Sequence Generator Source在這裡插入圖片描述
  2. Syslog Sources在這裡插入圖片描述
  • Syslog TCP Source
    在這裡插入圖片描述
  • Multiport Syslog TCP Source
    在這裡插入圖片描述
  • Syslog UDP Source
    在這裡插入圖片描述
  1. HTTP Source在這裡插入圖片描述
    在這裡插入圖片描述
  2. Stress Source在這裡插入圖片描述

適合做壓力測試

  1. Legacy Sources在這裡插入圖片描述
  • Avro Legacy Source
    在這裡插入圖片描述
  • Thrift Legacy Source
    在這裡插入圖片描述
  1. Custom Source
    在這裡插入圖片描述

自定義source

  1. Scribe Source在這裡插入圖片描述

3. Deserializers

1.

4. Handlers

在這裡插入圖片描述

相關文章