Kafka中的AR,ISR,OSR
在查看topic详细信息的话可以看到有个Isr,一开始不明所以,于是深入去学习了,不看不知道一看吓一跳:
首先要引出一个问题,为什么要存在这些东西:
在数据同步的时候,如果发生leader死掉,并且重新选举的leader能力不强(数据同步速度慢,数据同步不全面),会造成一群follow跟着一个傻逼leader。造成脏数据。所以我们就要知道哪些副本能力是较强的,同步数据是最快最完整的,在leader发生问题后第一时间补上。
AR:Assigned Replicas 总的分配副本
OSR:Out-of-Sync Replicas 脱离同步副本。 数据同步严重滞后的副本组成OSR(网络原因造成的等等),如果副本数为1或者副本同步进度差不多,那么这个可以为空。
ISR:in-sync-replica set 同步副本设置。为了解决数据同步高延迟问题以及leader重新选举时不会影响数据同步。
这里举个例子,尖子班与垃圾班。相信大家上学中考高考都会被分类过。想象ISR就是AR所有副本中的小部分精英,这小部分精英的作用就是当leader死掉的时候立即重新选举,保证新leader数据同步的准确性。根据:同步速度(同步时间越短证明速度越快)/数据条数(数据条数越多证明丢数据越少)。Leader会持续跟踪ISR候选人中的数据同步状态,如果ISR中的某些副本严重滞后,或者失效,都会马上从ISR中剔除。如果OSR的某些副本同步速度有所提升,以越来越小的时间差逐渐跟上leader的副本数据,则也会有机会进入到ISR。
同理,如果副本数只有一个,那么都没得选,只能它当leader,或者当大家都一样优秀,那就不需要分班,统一到时候再随机选举就好。
ISR收缩:
启动 Kafka时候自动开启的两个定时任务,“isr-expiration"和”isr-change-propagation".。isr-expiration任务会周期性的检测每个分区是否需要缩减其ISR集合,相当于一个纪检委员,巡查尖子班时候发现有学生睡觉打牌看小说,就把它的座位移除尖子班,缩减ISR,宁缺毋滥。。
同样道理,如果follower数据同步赶上leader,那么该follower就能进入ISR尖子班,扩充。
上面关于ISR尖子班人员的所见,都会记录到isrChangeSet中,想象成是一个名单列表,谁能进,谁要出,都记录在案
isr-change-propagation的作用就是检查isrChangeSet,按照名单上的信息移除和迁入,一般是2500ms检查一次,但是为了防止频繁收缩扩充影响性能,不是每次都能做变动,必须满足:(1).上一次ISR集合发生变化距离现在已经超过5秒,(2).上一次写入zookeeper的时候距离现在已经超过60秒。这两个条件都满足,那么就开始换座位!这两个条件可以由我们来配置。
所以,Kafka使用这种ISR的方式有效的权衡了数据可靠性与性能之间的关系。
Kafka中的AR,ISR,OSR相关推荐
- Kafka中ACKS LSO LEO LW HW AR ISR OSR解析
文章目录 前言 名词解释 消息生产和消费流程 ACKS三种类型 AR.ISR.OSR ISR机制 LSO.LEO.LW.HW 前言 Kafka中ACKS三种策略,LSO.LEO.LW.HW.AR.IS ...
- Kafka术语:AR、OSR、ISR、HW和LEO以及之间的关系
kafka 多副本 Kafka 为分区引入了多副本(Replica)机制,通过增加副本数量可以提升容灾能力.同一分区的不同副本中保存的是相同的消息(当然在同一时刻,副本之间可能并非完全一样),副本之间 ...
- 图解kafka中hw,leo,isr
原创不易,转载请注明出处 文章目录 前言 1.hw leo isr的介绍 2.图解hw leo isr 变化 总结 前言 本文主要是介绍下kafka broker 中的hw leo isr分别是啥,然 ...
- kafka中AR、ISR、OSR以及HW、LEO的区别
kafka中AR.ISR.OSR以及HW.LEO的关系 Kafka 为分区引入了多副本 (Replica) 机制, 通过增加副本数量可以提升容灾能力.同一分区的不同副本中保存的是相同的消息(在同一时刻 ...
- kafka中leader和follower、AR、ISR、OSR、Controller的选举、为什么不能通过ZK的方式来选举partition的leader?
leader和follower 在Kafka中,每个topic都可以配置多个分区以及多个副本.每个分区都有一个leader以及0个或者多个follower,在创建topic时,Kafka会将每个分区的 ...
- Kafka 中 AR、ISR、OSR 是什么?ISR 的伸缩性什么?
相信大家已经对 kafka 的基本概念已经有一定的了解了,下面直接来分析一下 ISR 和 AR 的概念. 一.ISR and AR 简单来说,分区中的所有副本统称为 AR (Assigned Repl ...
- kafka中的ISR、AR又代表什么?ISR伸缩又是什么?
kafka中的ISR.AR又代表什么?ISR伸缩又是什么? 分区中的所有副本统称为AR(Assigned Repllicas).所有与leader副本保持一定程度同步的副本(包括Leader)组成 ...
- kafka-4.进阶,ISR,OSR,AR,LW,HW,LEO,ACK原理理论
kafka 在zk里面可以看到kafka 谁拿到controller [zk: localhost:2181(CONNECTED) 6] get /kafka/controller {"ve ...
- kafka 中如何保证数据消息不丢失
背景 前几天,去两家公司面试,面试的过程中, 两家公司的面试官都给我提了如标题这样的一个问题.因为之前对kafka有一些了解,但是没有对这个的问题做过总结,现场就凭着记忆的进行了回答,面试官也表示这个 ...
最新文章
- 让AngularJS的$http 服务像jQuery.ajax()一样工作
- Python的正则表达式和爬虫
- linux通过c语言编程访问远程mysql
- 2018/Province_Java_C/3/字母阵列
- 微软BUG Bounty悬赏项目扩展至.NET Core和ASP.NET Core
- 每个Java开发人员都必须避免的9个安全错误
- 我们应该搞清楚分支预测
- Linux下查看CPU个数
- linux内核编译,内核参数修改
- java adminlte 使用_AdminLTE实现动态菜单
- 「解决方案」高速公路综合解决方案
- 【架构干货】京东是如何抗住今年春晚百亿次互动的?
- 小学校本课程计算机前言,《创意手工》三河小学校本课程——序言
- Oracle的本地网络服务名配置
- VUE提示Gradient has outdated direction syntax
- iOS进阶_地图上定位的标志——大头针
- 忠魁互联优化:头条SEO全网搜索营销怎么做?
- 上班族中午趴桌子睡觉为什么会头晕眼花?
- 断链在平曲线计算中的处理——短链篇
- 互联网教育已过时,教育科技才是未来的趋势