Kafka日志格式
Posted 绝世好阿狸
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kafka日志格式相关的知识,希望对你有一定的参考价值。
任务数据想要持久化或者进行网络传输,都需要进行序列化。序列化方式可以分两种:字节流或者字符流。
字节流:机器友好,传输效率更高,占用更小的空间,如果追求性能,优先考虑。常见的比如mysql、kafka等,都使用的字节流协议;
字符流:人类友好,可读性更好,拿到消息体后便可解析消息内容。但是效率较低,毕竟一个字符至少占用一个字节。常见的比如http协议就是字符流协议;
下面看下kafka的消息格式或者协议。
kafka消息格式经过了几个版本。
消息以消息集的形式存在。消息集内的每一条消息由offset、size以及record组成。
如果消息设置了压缩,则被压缩的多条消息内嵌为一条消息的record,offset为多条消息的最大值。
另外为了提升存储效率,kafka借鉴了protobuff的varint以及zigzag编码格式。
最新版的消息格式:
(注:图片均来自掘金小册)
以上是关于Kafka日志格式的主要内容,如果未能解决你的问题,请参考以下文章