Kafka(9)副本(leader、flower、isr说明)
分区(Partition):作用是分段存储kafka中的消息
副本:是对分区的备份
,在集群中,不同的副本会被部署在不同的broker上。
一:副本概念
副本是对分区的备份。在集群中,不同的副本会被部署在不同的broker上。
1.1 副本实例及说明
下面例子:创建1个主题,2个分区、3个副本。
./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 2 --topic my-replicated-topic
实际操作:
[root@localhost bin]# ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 2 --topic my-replicated-topic
Created topic my-replicated-topic.
# 查看该topic
[root@localhost bin]# ./kafka-topics.sh --describe --zookeeper localhost:2181 --topic my-replicated-topic
Topic: my-replicated-topic PartitionCount: 2 ReplicationFactor: 3 Configs: Topic: my-replicated-topic Partition: 0 Leader: 1 Replicas: 1,0,2 Isr: 1,0,2Topic: my-replicated-topic Partition: 1 Leader: 2 Replicas: 2,1,0 Isr: 2,1,0
[root@localhost bin]#
查看的信息解释:
上图中的参数意义如下:
replicas:leader和flower,主从之间副本之间目前有的结点数
当前副本存在的broker节点leader:副本里的概念
- 每个partition都有一个broker作为leader。
- 消息发送方要把消息发给哪个broker?就看副本的leader是在哪个broker上面。副本里的leader专门用来接收消息。接收到消息,其他follower通过poll的方式来同步数据。
follower: leader处理所有针对这个partition的读写请求,而follower被动复制leader,不提供读写(主要是为了保证多副本数据与消费的一致性),如果leader所在的broker挂掉,那么就会进行新leader的选举,至于怎么选,在之后的controller的概念中介绍。
Isr:作用为
当leader挂了的话,在选举新的leader的时候就想要从Isr集合中选取
可以同步的broker节点和已同步的broker节点,存放在isr集合中。
生产者发送消息会往leader上面发,消费者消费消息也是从leader上面去消费;副本的作用就是等leader挂了之后,其副本所在的broker变为leader
1.2 副本总结(leader、flower、isr说明)
副本是为了为主题中的分区创建多个备份,多个副本在kafka集群的多个broker中,会有一个副本作为leader,其他是follower。
- leader
kafka的写和读的操作,都发生在leader上。leader负责把数据同步给folower。当leader挂了,经过主从选举,从多个follower中选举产生一个新的leader - flower
接收leader的同步的数据 - isr
可以同步和已同步的节点会被存入到isr集合中。这里有一个细节:如果isr中的节点性能较差,会被提出isr集合
1.3 broker、主题、分区、副本总结
集群中有多个broker,创建主题时可以指明主题有多个分区(把消息拆分到不同的分区中存储),可以为分区创建多个副本,不同的副本存放在不同的broker里
。
Kafka(9)副本(leader、flower、isr说明)相关推荐
- Kafka 副本leader选举
谁来实施 分区leader副本的选举由Kafka Controller 负责具体实施. 选举时间 leader挂掉时 broker挂掉时,然后broker上可能有某些leader 选举资格 Kafka ...
- KafKa - 分区副本ISR选举机制
一.KafKa分区副本ISR选举机制 kafka 中每一个主题又进一步划分成若干个分区.副本的概念实际上是在分区层级下定义的,每个分区配置有多若干个副本. 所谓的副本,本质上就是一个只能追加写消息的提 ...
- 图文了解 Kafka 的副本复制机制
让分布式系统的操作变得简单,在某种程度上是一种艺术,通常这种实现都是从大量的实践中总结得到的.Apache Kafka 的受欢迎程度在很大程度上归功于其设计和操作简单性.随着社区添加更多功能,开发者们 ...
- Kafka中副本机制的设计和原理
Kafka中一个分区可以拥有多个副本,副本可分布于多台机器上.而在多个副本中,只会有一个Leader副本与客户端交互,也就是读写数据.其他则作为Follower副本,负责同步Leader的数据,当Le ...
- kafka的副本以及分区与副本的关系
一 副本的作用 1.Kafka 副本作用:提高数据可靠性. 2.Kafka 中副本分为:Leader 和 Follower.Kafka 生产者只会把数据发往 Leader, 然后 Follower 找 ...
- Kafka分区副本重分配源码分析
Kafka分区副本重分配 文章目录 Kafka分区副本重分配 1.前言 2.分区副本重分配流程图 3.分区副本重分配详细分析 3.1 客户端行为 3.1.1 执行副本重分配脚本 3.1.2 解析并验证 ...
- kafka关于副本的理解
前言 副本机制是许多存储引擎必备的,在数据存储时候,为了保证数据的高可靠性,常常需要将主节点数据进行备份存储,即保存一份与主节点相同的数据集,一旦主节点发生宕机等故障,通过副本还能进行数据的恢复,比如 ...
- Kafka数据高可靠ACK/ISR/HW你都会了吗?
为保证producer发送的数据,能可靠的发送到指定的topic,topic的每个partition收到producer发送的数据后,都需要向producer发送ack(acknowledgement ...
- kafka:replica副本同步机制
1 前言 Kafka的流行归功于它设计和操作简单.存储系统高效.充分利用磁盘顺序读写等特性.非常适合在线日志收集等高吞吐场景. Kafka特性之一是它的复制协议.复制协议是保障kafka高可靠性的关键 ...
- Kafka分区副本分配规则
Kafka分区副本分配规则 文章目录 Kafka分区副本分配规则 1.前言 2.自动分配 a. 无机架方式分配 b. 有机架方式分配 (1)机架介绍 (2)有机架方式分配的目的 (3)分配规则 c. ...
最新文章
- discuz_style_default.xml修改
- wireshark抓包图解 TCP三次握手/四次挥手详解
- 最简单的方式实现一棵二叉树
- 《Head First Servlets JSP(中文版)》书摘
- 服务器中显示存储设备,服务器节点信息集中显示方法、系统、设备及存储介质...
- 清除重复记录只保留一条
- wav音量和分贝转换关系_Permute 3 for mac(音视频格式转换器) 最新版
- asp.net web开发步骤_WEB开发流程
- 打破气球所能获得的最大积分 Burst Balloons
- 连Spring源码都没看过,你怎么敢在简历上写“精通”?
- 一个比较完整的pytorch项目
- 易语言卷帘菜单与json_易语言卷帘式菜单组件使用教程
- 440页PPT华为大数据分享专场|实时|离线|数仓
- oracle查询表锁定以及解锁方法
- Office2016专业版打开超链接时提示“您的组织策略阻止我们为您完成此操作。...”问题解决
- RepVGG:算法简介及repvgg.py代码解析
- linux fall delay 10,delay/skew/slack/slew的区别
- 鸿蒙系统为万物互联而生,鸿蒙系统发布:万物互联 EMUI10同台上场
- Qt-源码部分编译-C++
- 黑客与画家——片段一