kafka消费者

nzrxty8p  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(436)

我正在使用pentaho ce的kafka消费插件,非常感谢您的帮助。我想知道你们中是否有人在pentaho失败的情况下丢失了任何信息(根据官方文件,无法阅读两次信息,我错了吗?)。如果出现这种情况,如何捕获这些消息以便重新处理它们?
参考文献:
http://wiki.pentaho.com/display/eai/apache+kafka+consumer

qltillow

qltillow1#

kafka在配置的保留期内保留消息,不管消息是否已被消费,因此它允许消费者返回到以前处理过的偏移量,并在那里再次提取。
我自己还没有使用过kafka插件,但是看起来你可以禁用自动提交并自己管理它。您可能需要来自apache的kafka系统工具以及作业中的一些命令行步骤。您必须在开始时获取当前偏移量,从所使用的消息中获取最后一个偏移量,如果作业/批处理达到了完成时间,则将最后一个偏移量提交给集群。
你也可以把起始偏移量作为一个字段(消息键?)提供给插件,但是我找不到任何关于它的文档。在这种情况下,可以将偏移量与目标数据一起存储,并返回到每次运行开始时的最后一个偏移量。失败的运行不会更新目标偏移量,因此不会丢失任何消息。
如果您选择第二条路线,请注意auto.offset.reset设置和行为,因为如果目标中的最后一个偏移量超过保留期,则它可能已经从集群中消失。

相关问题