什麼是Kafka connect?如何通過Connector連接器建立數據管道?

一、Kafka Connect簡介

Kafka是一個使用越來越廣的消息系統,尤其是在大數據開發中(實時數據處理和分析)。為何集成其他系統和解耦應用,經常使用Producer來發送消息到Broker,並使用Consumer來消費Broker中的消息。Kafka Connect是到0.9版本才提供的並極大的簡化了其他系統與Kafka的集成。Kafka Connect運用用戶快速定義並實現各種Connector(File,Jdbc,Hdfs等),這些功能讓大批量數據導入/導出Kafka很方便。

什麼是Kafka connect?如何通過Connector連接器建立數據管道?

如圖中所示,左側的Sources負責從其他異構系統中讀取數據並導入到Kafka中;右側的Sinks是把Kafka中的數據寫入到其他的系統中。


二、各種Kafka Connector

Kafka Connector很多,包括開源和商業版本的。如下列表中是常用的開源Connector。

什麼是Kafka connect?如何通過Connector連接器建立數據管道?

商業版的可以通過Confluent.io獲得。


三、示例

FileConnector本例演示如何使用Kafka Connect把Source(test.txt)轉為流數據再寫入到Destination(test.sink.txt)中。如下圖所示:

什麼是Kafka connect?如何通過Connector連接器建立數據管道?

本例使用到了兩個Connector:

  • FileStreamSource:從test.txt中讀取併發布到Broker中
  • FileStreamSink:從Broker中讀取數據並寫入到test.sink.txt文件中

訪問Kafka技術專欄,瞭解更多的技術細節和項目代碼。


分享到:


相關文章: