中英企业网站,郑州网站建设 论坛,网站开发常用语言的优劣势,适合html初学者做的网站本文内容来自尚硅谷B站公开教学视频#xff0c;仅做个人总结、学习、复习使用#xff0c;任何对此文章的引用#xff0c;应当说明源出处为尚硅谷#xff0c;不得用于商业用途。 如有侵权、联系速删 视频教程链接#xff1a;【尚硅谷】Kafka3.x教程#xff08;从入门到调优… 本文内容来自尚硅谷B站公开教学视频仅做个人总结、学习、复习使用任何对此文章的引用应当说明源出处为尚硅谷不得用于商业用途。 如有侵权、联系速删 视频教程链接【尚硅谷】Kafka3.x教程从入门到调优深入全面 文章目录 大致介绍实际查看index 文件和 log 文件详解 大致介绍
Topic是逻辑上的概念而partition是物理上的概念本来每个partition应对应于一个log文件该log文件中存储的就是Producer生产的数据。Producer生产的数据会被不断追加到该log文件末端为防止log文件过大导致数据定位效率低下Kafka采取了分片和索引机制将每个partition分为多个segment。每个segment包括“.index”文件、“.log”文件和.timeindex等文件。这些文件位于一个文件夹下该文件夹的命名规则为topic名称分区序号例如first-0。
实际查看
看一下实际是什么样的 1启动生产者并发送消息。
bin/kafka-console-producer.sh --bootstrap-server hadoop102:9092 --topic firsthello world2查看 hadoop102或者 hadoop103、hadoop104的/opt/module/kafka/datas/first-1first-0、first-2路径上的文件。
ls00000000000000000092.index
00000000000000000092.log
00000000000000000092.snapshot
00000000000000000092.timeindex
leader-epoch-checkpoint
partition.metadata3直接查看 log 日志发现是乱码。
cat 00000000000000000092.log\CYnF|©|©ÿhello world4通过工具查看 index 和 log 信息。
kafka-run-class.sh kafka.tools.DumpLogSegments --files ./00000000000000000000.indexDumping ./00000000000000000000.index
offset: 3 position: 152kafka-run-class.sh kafka.tools.DumpLogSegments --files ./00000000000000000000.logDumping datas/first-0/00000000000000000000.log
Starting offset: 0
baseOffset: 0 lastOffset: 1 count: 2 baseSequence: -1 lastSequence: -1 producerId: -1 producerEpoch: -1 partitionLeaderEpoch: 0 isTransactional: false isControl: false position: 0 CreateTime: 1636338440962 size: 75 magic: 2 compresscodec: none crc: 2745337109 isvalid: true
baseOffset: 2 lastOffset: 2 count: 1 baseSequence: -1 lastSequence: -1 producerId: -1 producerEpoch: -1 partitionLeaderEpoch: 0 isTransactional: false isControl: false position: 75 CreateTime: 1636351749089 size: 77 magic: 2 compresscodec: none crc: 273943004 isvalid: true
baseOffset: 3 lastOffset: 3 count: 1 baseSequence: -1 lastSequence: -1 producerId: -1 producerEpoch: -1 partitionLeaderEpoch: 0 isTransactional: false isControl: false position: 152 CreateTime: 1636351749119 size: 77 magic: 2 compresscodec: none crc: 106207379 isvalid: true
baseOffset: 4 lastOffset: 8 count: 5 baseSequence: -1 lastSequence: -1 producerId: -1 producerEpoch: -1 partitionLeaderEpoch: 0 isTransactional: false isControl: false position: 229 CreateTime: 1636353061435 size: 141 magic: 2 compresscodec: none crc: 157376877 isvalid: true
baseOffset: 9 lastOffset: 13 count: 5 baseSequence: -1 lastSequence: -1 producerId: -1 producerEpoch: -1 partitionLeaderEpoch: 0 isTransactional: false isControl: false position: 370 CreateTime: 1636353204051 size: 146 magic: 2 compresscodec: none crc: 4058582827 isvalid: trueindex 文件和 log 文件详解 参数描述log.segment.bytesKafka 中 log 日志是分成一块块存储的此配置是指 log 日志划分成块的大小默认值 1G。log.index.interval.bytes默认 4kbkafka 里面每当写入了 4kb 大小的日志.log然后就往 index 文件里面记录一个索引。 稀疏索引。