例如假设使用lz4压缩类型,返回的输出流实体对象为KafkaLZ4BlockOutputStream , 这里面有写入消息的方法和压缩方法。...attributes:已经弃用,默认为0,固定占用了1B
timestampDelta: 时间戳的增量,使用可变字段。...使用增量可以有效节约内存
offsetDelta: 位移的增量,使用可变字段, 使用增量可以有效节约内存
keyLength: key的长度,使用可变字段, 如果没有key,该值为-1。...valueLength:value的长度,使用可变字段, 如果没有key,改值为-1.
value: value的信息,正常存储,如果value==null,则该值也不存在。...leader epoch 字段开始到整体末尾的长度,计算的逻辑是(sizeInBytes - LOG_OVERHEAD), 这个sizeInBytes就是整个RecordBatch的长度。