日誌採集系統Flume和Kafka

簡介


       flume是管道流方式,提供了很多的默認實現,讓用戶通過參數部署,及擴展API。屬於hadoop體系組件,主要特點是擁有豐富的agent(數據採集器)接口和底層集成了HDFS寫功能。除此之Flume對我們來說並不是什麼太新鮮的技術。比如Agent數據採集功能,本質就是通過代理接口攔截請求數據,然後將請求數據同步給數據存儲服務。基於業務系統開發儘量使用組件不要直接使用服務的原則,其實這樣的數據採集功能對我們來說並不具有很大的吸引力。如果在業務初期,爲了減少開發量,縮短研發週期,可以使用flume作爲主要的日誌採集器。
         Kafka是可持久化的分佈式的消息隊列,Linked公司開源,自帶存儲,提供push和pull存取數據功能。

        flume和kafka之間進行比較的話,我們可以這麼概括,flume和kafaka都是日誌收集系統,flume日誌採集做的比較好,適合多生產者場景,kafaka消息隊列做的比較好,適合多個消費者場景。

總結


       flume和Kafaka可以說各有所長,同樣作爲日誌系統,flume日誌採集做的比較好,適合多生產者場景,kafaka消息隊列做的比較好,適合多個消費者場景。但是由於個人原因吧,我對使用hadoop系列組件比如HDFS或者Hbase進行數據存儲,存在本能的抗拒,所以我這裏只推薦Flume+Kafaka+mysql的日誌採集模式,Flume做日誌採集,使用Kafaka做數據傳輸,使用Mysql作爲數據存儲這樣的架構。其他的使用方法歡迎大家一起討論。如果有機會探討一下Flume的架構模式,這個還是有很多值得我們學習的地方的。

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