我想知道,当startOffsetTime的值为kafka.api.OffsetRequest.EarliestTime()时,偏移值是多少?

I want to know,when startOffsetTime`s value is kafka.api.OffsetRequest.EarliestTime().the offset value is what?

当我设置 startOffsetTime=kafka.api.OffsetRequest.LatestTime() 时,偏移值是可用的最大值。

设置时startOffsetTime is kafka.api.OffsetRequest.EarliestTime()偏移值是多少?

有点难以理解你的问题。但无论如何我想你是在问当你查询最早的偏移量时偏移量是多少。

Kafka 具有日志保留配置,允许设置消息或日志文件大小的生存时间。 More here.

假设您有一个日志保留时间设置为 1 小时的主题,并且您生成了一些具有以下偏移量的消息:

0 1 2 3 4 5 6 7 8 9 10 ...

一小时后旧消息将从日志中删除,您可能会看到以下图片:

<offsets 0 1 2 3 4 no more exist in log> 5 6 7 8 9 10 ...

然后当您查询最早的偏移量时,您将得到 5 因为偏移量 0-4 不再存在。

同样适用于 log.retention.bytes 配置,当您超过该配置值时,较旧的消息将被丢弃(实际上是整个段,但这对这个问题无关紧要)导致最早的偏移量更高比 0.