apache kafka partiton下的Position值记录什么?

时间:2018-11-09 18:17:08

标签: apache-kafka kafka-producer-api

以下日志文​​件下的头寸值是什么意思?

Starting offset: 0
offset: 0 position: 0 CreateTime: 1541783974960 isvalid: true keysize: -1 valuesize: 10 magic: 2 compresscodec: NONE producerId: -1 producerEpoch: -1 sequence: -1 isTransactional: false headerKeys: [] payload: Spam_Mail1
offset: 1 position: 78 CreateTime: 1541784566896 isvalid: true keysize: -1 valuesize: 0 magic: 2 compresscodec: NONE producerId: -1 producerEpoch: -1 sequence: -1 isTransactional: false headerKeys: [] payload: 
offset: 2 position: 146 CreateTime: 1541784725893 isvalid: true keysize: -1 valuesize: 0 magic: 2 compresscodec: NONE producerId: -1 producerEpoch: -1 sequence: -1 isTransactional: false headerKeys: [] payload:

1 个答案:

答案 0 :(得分:1)

position属性代表消息在段日志文件中的 物理 位置。

位置索引文件中还提供了相同的属性以及偏移量。

当使用者在偏移量 x 处发送消息的获取请求时,代理在索引文件中查找最接近偏移量 x 的偏移量,并获取位置值从该索引文件中转到日志文件中的 位置 (您在问题中所指的那个位置)以获取消息。

希望这会有所帮助!