什么是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技术专栏,了解更多的技术细节和项目代码。


分享到:


相關文章: