Docs 菜单
Docs 主页
/
MongoDB Kafka Connector
/

Kafka 和 Kafka Connect

在此页面上

  • Overview
  • Apache Kafka
  • Kafka Connector
  • 示意图

在本指南中,您可以了解有关 Apache Kafka 和 Kafka Connect 的以下基础信息:

  • Apache Kafka 和 Kafka Connect 是什么

  • Apache Kafka 和 Kafka Connect 解决什么问题

  • 为什么 Apache Kafka 和 Kafka Connect 非常实用

  • 数据如何通过 Apache Kafka 和 Kafka Connect 管道

Apache Kafka 是一个开源发布/订阅消息系统。Apache Kafka 提供了一个灵活、容错可水平扩展的系统,用于在数据存储和应用程序中移动数据。如果满足以下条件,则系统是容错的:即使系统的某些组件停止工作,系统也可以继续运行。如果可以通过添加更多计算机(而不是改进计算机硬件)来扩展系统以处理更大的工作负载,则系统是可水平扩展的。

有关 Apache Kafka 的更多信息,请参阅以下资源:

  • Confluent“What is Apache Kafka?”页面

  • Apache Kafka 官方文档

Kafka Connect 是 Apache Kafka 的一个组件,解决了 Apache Kafka 与 MongoDB 等数据存储的连接问题。Kafka Connect 通过提供以下资源解决了这个问题:

  • 用于与数据存储之间传输数据的容错运行时环境。

  • Apache Kafka 社区的框架,用于分享将 Apache Kafka 连接到不同数据存储的解决方案。

Kafka Connect 框架定义一个 API,以使开发人员编写可重用的连接器。连接器使 Kafka Connect 部署能够与作为数据源或数据接收器的特定数据存储进行交互。MongoDB Kafka Connector 就是这些连接器之一。

有关 Kafka Connect 的更多信息,请参阅以下资源:

提示

在连接到数据存储时使用 Kafka Connect 而不是生产者/使用者客户端

虽然您可以编写自己的应用程序,以使用生产客户端和消费客户端将 Apache Kafka 连接到特定的数据存储,但 Kafka Connect 可能更适合您。以下是使用 Kafka Connect 的部分原因:

  • Kafka Connect 具有容错的分布式架构,以确保可靠的管道。

  • 有大量社区维护的连接器,可使用 Kafka Connect 框架将 Apache Kafka 连接到 MongoDB、PostgreSQL 和 MySQL 等常用数据存储。 这减少了您必须编写和维护的模板代码量,以管理数据库连接、错误处理、死信队列集成以及 Apache Kafka 与数据存储连接时涉及的其他问题。

  • 您可以选择使用 Confluence 提供的托管 Kafka Connect 集群。

下图展示了信息如何流经使用 Apache Kafka 和 Kafka Connect 构建的示例数据管道。示例管道将 MongoDB 集群用作数据源,将 MongoDB 集群用作数据汇。

Kafka Connect 部署的数据流图。

示例管道中的所有连接器和数据存储都是可选的。 您可以将其替换为部署所需的连接器和数据存储。

后退

简介