kafka多個生產者同時生產 日志采集系統(tǒng)flume和kafka有什么區(qū)別及聯(lián)系?
日志采集系統(tǒng)flume和kafka有什么區(qū)別及聯(lián)系?Flume和Kafka有一部分功能是相同的,但是整體來看,兩者的差別還是很大的;它們使用的場景有所不同,但是可以相互配合使用。Flume簡單的說,F
日志采集系統(tǒng)flume和kafka有什么區(qū)別及聯(lián)系?
Flume和Kafka有一部分功能是相同的,但是整體來看,兩者的差別還是很大的;它們使用的場景有所不同,但是可以相互配合使用。
Flume
簡單的說,Flume是分布式日志收集系統(tǒng),它把各個服務器上的日志收集起來,傳送到制定的地方,比如傳送到HDFS中。
Kafka
Kafka的定位是分布式消息中間件,自帶存儲,提供push和pull存取數據功能。
使用場景
在實際應用中,系統(tǒng)實時產生的日志需要最后進入HDFS,但是生產上的日志數量會有波動,比如由于訪問量的增加,導致突然之間產生大量的日志,這時候可能會導致日志寫入HDFS失敗,所以這時候可以先把日志數據寫入到Kafka中,再由Kafka導入到HDFS中。
總結:在日志采集系統(tǒng)中,把Kafka當做日志緩存更加合適,Flume做數據采集,因為它可以定制很多數據源,減少開發(fā)量,所以Flume和Kafka可以配合起來一起工作。
整體的流程是這樣的:
服務器上的日志<--Flume-->Kafka-->HDFS-->離線計算
服務器上的日志<--Flume-->Kafka-->Storm
希望我的回答能夠幫助到你!
kafka基本概念介紹?
消息中間件,主要是起到一個緩沖承接數據并且保證數據不丟的作用,在實時計算中一般會用到,安裝了kafka的程序可以叫broker,kafka的重要角色生產者和消費者,kafka中如果分區(qū)數量大于1,分區(qū)中角色又分leader和follwer,leader負責讀寫,follwer負責同步數據,面試中經常會被問到kafka為什么吞吐量這么大,一是多個分區(qū)并行執(zhí)行,二是順序寫磁盤,三是操作系統(tǒng)級別的緩存
如何搭建kafka?該如何學習kafka?
百度 一大堆