Kafka有一些应用类工具,包括命令行工具、Kafka Connect、Kafka Mirror Maker和Kafka Streams等。
命令行工具
Kafka中提供了许多命令行工具(位于$KAFKA_HOME/bin目录下)用于管理集群的变更.
消费组管理
消费位移管理
手动删除消息
Kafka Connect
Kafka Connect是一个工具,它为在Kafka和外部数据存储系统之间移动数据提供了一种可靠的且可伸缩的实现方式。Kafka Connect可以简单快捷地将数据从Kafka中导入或导出,数据范围涵盖关系型数据库、日志和度量数据、Hadoop 和数据仓库、NoSQL 数据存储、搜索索引等。相对于生产者和消费者客户端而言,Kafka Connect省掉了很多开发的工作,尤其是编码部分,这使得应用开发人员更容易上手。 Kafka Connect有两个核心概念:Source和Sink。参考图9-1,Source负责导入数据到Kafka,Sink负责从Kafka导出数据,它们都被称为Connector(连接器)。
在Kafka Connect中还有两个重要的概念:Task和Worker。Task是Kafka Connect数据模型的主角,每一个Connector都会协调一系列的Task去执行任务,Connector可以把一项工作分割成许多Task,然后把Task分发到各个Worker进程中去执行(分布式模式下),Task不保存自己的状态信息,而是交给特定的Kafka主题去保存。Connector和Task都是逻辑工作单位,必须安排在进程中执行,而在Kafka Connect中,这些进程就是Worker。
Kafka Connect 提供了以下特性。
- 通用性:规范化其他数据系统与Kafka的集成,简化了连接器的开发、部署和管理。
- 支持独立模式(standalone)和分布式模式(distributed)。
- REST接口:使用REST API提交和管理Connector。
- 自动位移管理:自动管理位移提交,不需要开发人员干预,降低了开发成本。
- 分布式和可扩展性:Kafka Connect基于现有的组管理协议来实现扩展Kafka Connect集群。
- 流式计算/批处理的集成。
Kafka Mirror Maker
Kafka Streams
参考
- 深入理解Kafka:核心设计与实践原理 2019 朱忠华 此材料可能受版权保护。
如果这篇文章帮助到了你,欢迎评论、点赞、转发。