Flume 與Kafka區別


   今天開會討論日志處理為什么要同時使用Flume和Kafka,是否可以只用Kafka 不使用Flume?當時想到的就只用Flume的接口多,不管是輸入接口(socket 和 文件)以及輸出接口(Kafka/HDFS/HBase等)。

   考慮單一應用場景,從簡化系統的角度考慮,在滿足應用需求的情況下可能只使用一個比較好。但是考慮到現有系統業務發展,為了后面的靈活擴展,在系統設計時留有一定的擴展性感覺更重要。可能使用Flume+kafka架構相對只使用Kafka會多占用1-2台機器做Flume日志采集,但是為了方便以后日志數據處理方式的擴展,可以采用Flume+kafka架構。

  Flume :管道 ----個人認為比較適合有多個生產者場景,或者有寫入Hbase、HDFS和kafka需求的場景。

  Kafka :消息隊列-----由於Kafka是Pull模式,因此適合有多個消費者的場景。

  目前應用場景,一台日志轉發機負責產生日志。后端需要通過Strom消費日志信息,建議可以設置成log-->Kafka->Strom.如果以后有寫入Hbase或者HDFS的需求可以,在Kafka后面再接上Strom,或者在日志轉發機上直接日志落地,由Flume去讀取日志消息。

 

參考:

  Kafka與Flume區別

  Kafka與Flume對比

 基於Flume的美團日志收集系統

  Using Flume要點


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM