Kafka 时间戳顺序与偏移量对应吗?

6
我们使用 Kafka 作为我们的消息队列。我们的业务要求消息时间戳必须与偏移量具有相同的顺序,也就是说:如果存在消息 m1 和消息 m2,并且 (m1.timestamp < m2.timestamp),但 m1 的偏移量比 m2 小,则必须确保在消费这些消息时 m1 先于 m2。

1
Apache Flink 在事件时间排序方面表现良好,如果您愿意尝试不同的技术栈,它是一个不错的选择。 - Bitswazsky
1个回答

15
根据时间戳类型的不同,有两种类型:
- CreateTime - 时间戳在生产者记录创建时分配,因此是在发送之前。由于可能会重试,所以不能保证排序顺序。 - LogAppendTime - 时间戳在记录附加到代理商日志时分配。在这种情况下,每个分区的排序顺序都得以保留。多条消息可能被分配相同的时间戳。
默认情况下,使用CreateTime。要更改此设置,请为代理或特定主题设置log.message.timestamp.typemessage.timestamp.type

你知道如果在消费一个主题时,时间戳与偏移量不按照步进增加,是否会有任何影响吗? - Matthew Allen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接