如何使 Kafka 接收器连接器在接收器启动时将数据从主题插入到表中

Posted

技术标签:

【中文标题】如何使 Kafka 接收器连接器在接收器启动时将数据从主题插入到表中【英文标题】:How to enable Kafka sink connector to insert data from topics to tables as and when sink is up 【发布时间】:2017-08-29 13:26:12 【问题描述】:

我为我的数据存储 (Amppol AD​​S) 开发了 kafka-sink-connector(使用 confluent-oss-3.2.0-2.11,连接框架),它将来自 kafka 主题的数据存储到我商店中的相应表中。

只要 kafka 服务器和 ADS 服务器正常运行,一切都会按预期运行。

需要有关特定用例的帮助/建议,其中事件在 kafka 主题中被摄取,并且接收器组件 (ADS) 已关闭。 这里的期望是每当接收器服务器出现时,应该将之前在 kafka 主题中摄取的记录插入到表中;

请告知如何处理这种情况。

连接框架中是否对此提供任何支持..?或者至少一些参考资料会很有帮助。

【问题讨论】:

【参考方案1】:

SinkConnector 偏移量在 Kafka 的 _consumer_offsets 主题中针对您的连接器名称进行维护,当 SinkConnector 重新启动时,它将从 Kafka 服务器从存储在 _consumer_offsets 主题中的先前偏移量中选择消息。

因此您不必担心管理偏移量。这一切都由 Connect 框架中的工作人员完成。在您的场景中,您只需重新启动接收器连接器即可。如果消息由您的源连接器推送到 Kafka 并且在 Kafka 中可用,则可以随时启动/重新启动接收器连接器。

【讨论】:

以上是关于如何使 Kafka 接收器连接器在接收器启动时将数据从主题插入到表中的主要内容,如果未能解决你的问题,请参考以下文章

kafka连接器不会自动启动

Kafka Connect:一个接收器连接器,用于从一个主题写入多个表

在不启动接收活动的情况下将数据传递给活动 (Android)

Kafka Connect JDBC 接收器连接器

Kafka Elasticsearch 接收器连接器:连接错误

如何在 kafka sink 连接器中设置特定表?