深入Kafka--

集群成员关系

在这里插入图片描述

控制器

  • 控制器的作用: 除具有一般broker的功能之外,还负责分区首领的选举
  • 控制器的选举: 各broker向ZK中/controller注册临时节点
  • 分区首领的选举: broker加入时,同步副本;broker离开时,选举新的分区首领

分区复制

  • 首领副本 :每个分区都有一个首领副本。首领副本负责处理理所有生产者和消费者的请求
  • 跟随者副本:首领以外的副本都是跟随者副本。跟随者副本不处理理来自客户端端请求,它们唯一的任务就是从首领那里负责消息,保持与首领一致的状态。
  • AR:Assigned Replicas,所有副本
  • ISR:In-Sync Replicas,已同步的副本
  • OSR:Out-Of-Sync Replicas,掉队的副本
  • AR = ISR + OSR

物理存储

  • Kafka会将数据持久化到文件,文件目录以分区来组织,每个分区下有多个文件,每个文件称作一个片段,每个片段包含1G或一周的数据,以较小的值为准。
  • 保留策略:数据被删除之前可以保留多长时间,或者清理数据之前可以保留的数据量大小。
  • 3类文件:数据文件、索引文件、时间索引文件。
    在这里插入图片描述

基本概念

在这里插入图片描述

刷盘

在这里插入图片描述

文件滚动

在这里插入图片描述

  • 默认情况下,每个片段包含1G或7天的数据,以较小的值为准;如果达到片段上限,就关闭当前文件,并打开一个新文件

数据清除策略

  • log.cleanup.policy:⽇志清除策略(delete/compact)
  • log.retention.bytes:⽇志保留量
  • log.retention.hours:⽇志保留时间
    在这里插入图片描述

索引

  • 3步定位message
    1)二分查找index file
    2)通过index file定位物理理地址
    3)顺序扫描 segment file
  • 稀疏索引 vs. 稠密索引
    在这里插入图片描述

消息格式

两种时间可选:createtime发送时间、logappendtime到达broker的时间
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值