Apache kafka 重置为Kafka分区中的自定义偏移量

Apache kafka 重置为Kafka分区中的自定义偏移量,apache-kafka,stream-processing,apache-samza,Apache Kafka,Stream Processing,Apache Samza,我正在研究卡夫卡的一个具体用例。我有一个流动的数据流,我想处理它并将其发布到中间阶段 在每个阶段(初始和中间阶段),Samza任务将进行处理和重新发布。我的一个要求是,无论何时,我都能够从特定阶段及时重新触发整个处理管道 我知道kafka为每个日志(传入数据)维护一个偏移量。但是,Kafka是否提供了任何功能,我可以将分区偏移映射到某个自定义标识符(比如时间戳)并使用它从该点重新触发整个管道 我在多个地方读到,我可以通过重置kafka提交日志的开头并返回N次来重播它。但是有没有一种方法可以让我将

我正在研究卡夫卡的一个具体用例。我有一个流动的数据流,我想处理它并将其发布到中间阶段

在每个阶段(初始和中间阶段),Samza任务将进行处理和重新发布。我的一个要求是,无论何时,我都能够从特定阶段及时重新触发整个处理管道

我知道kafka为每个日志(传入数据)维护一个偏移量。但是,Kafka是否提供了任何功能,我可以将分区偏移映射到某个自定义标识符(比如时间戳)并使用它从该点重新触发整个管道

我在多个地方读到,我可以通过重置kafka提交日志的开头并返回N次来重播它。但是有没有一种方法可以让我将这些偏移量映射到我自己的标识符(比如时间戳)上,并将其用作一种机制来判断要从哪个偏移量重播

最佳

Shabir

您可以使用命令行工具kafka consumer groups根据时间戳(--to-datetime)重置consumer group的偏移量。请参阅文档页面上的更多信息:


当然,这也可以通过代码实现。

您可以使用命令行工具kafka consumer groups根据时间戳(--to-datetime)重置consumer group的偏移量。请参阅文档页面上的更多信息:


当然,通过代码也可以实现同样的效果。

谢谢。这正是我所期待的。是否有一些Kafka SDK允许我们直接从代码中访问此信息并重新配置偏移量?我还可以使用自己的字段标记偏移量,这样当我说从该字段的该值运行时,它将选择正确的偏移量?查看这篇文章如何在代码中做到这一点据我所知,卡夫卡不允许你在偏移量上放置任何“标签”。您可以使用任何数据库(类似于table:topic、partition、offset->tag)自行实现该功能,谢谢。这正是我所期待的。是否有一些Kafka SDK允许我们直接从代码中访问此信息并重新配置偏移量?我还可以使用自己的字段标记偏移量,这样当我说从该字段的该值运行时,它将选择正确的偏移量?查看这篇文章如何在代码中做到这一点据我所知,卡夫卡不允许你在偏移量上放置任何“标签”。您可以使用任何数据库(类似于表:主题、分区、偏移量->标记)自行实现该功能