我找到了Kafka头像的链接。如以下链接所述
Kafkaaderhttps://cwiki.apache.org/confluence/display/kafka/kip-82+-+add+record+headers
我可以使用producerapi中的键/值对发送头和负载信息吗?我看到了关于日志压缩的一点,我可以关闭日志压缩吗?这样,在我的情况下,当每个键都是唯一的时,日志就不会跟踪每个记录了?
我确实创建了一个具有键值对的生产者,其中键具有头信息,值是有效负载。每把钥匙都是独一无二的。
使用者还接收到正确的键值对。
我想知道在大容量上使用这种方法压缩日志头信息是否会有任何问题。关闭日志兼容性是一个选项,让保留清理旧数据吗?
2条答案
按热度按时间stszievb1#
除了cricket_007所说的之外,如果我理解了这个问题的话,日志压缩特性不是基于报头中使用的密钥,而是基于kafka消息中的密钥。每个kafka消息都有一个键、一个有效负载和头(当然是键/值对),然后还有更多其他内容(时间戳…)。日志压缩作用于消息的键,而不是消息头Map中的键。
roqulrg32#
标头不控制日志压缩。
是的,你可以
producer.send()
一ProducerRecord
与Headers
在打开或关闭日志压缩的情况下,保留窗口中唯一密钥的所有记录都会保留下来,所以我不确定我是否理解这个问题