kafka入门(九):副本

这篇具有很好参考价值的文章主要介绍了kafka入门(九):副本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

副本

副本(Replica),指的是分布式系统对数据和服务提供的一种冗余方式。
Kafka通过多副本机制实现故障自动转移,在Kafka集群中某个broker节点失效的情况下仍然保证服务可用。

kafka 副本之间是 一主多从的关系。
其中 leader 副本负责处理读写请求,follower 副本只负责与 leader 副本的消息同步。

副本处于不同的 broker中,当 leader 副本出现故障时,从 follower 副本中重新选举新的 leader 副本对外提供服务。

kafka 通过多副本机制实现了故障的自动转移,当 kafka集群中某个 broker 失效时仍然能保证服务可用。

ISR (In-Sync Replicas)

所有与 leader 副本保持一定程度同步的副本(包括leader副本在内) 组成 ISR (In-Sync Replicas)

只有在 ISR 集合中的副本才有资格被选举为新的 leader。

OSR (Out-of-Sync Replicas)

消息先发送到 leader 副本,然后 follower 副本才能从 leader 副本中拉取消息进行同步,同步期间 follower 副本相对 leader 副本会有一定程序的滞后。

与 leader 副本同步滞后过多的副本(不包括 leader副本) 组成 OSR (Out-of-Sync Replicas)。

leader副本负责维护和跟踪ISR集合中所有follower副本的滞后状态,当follower副本落后太多或失效时,leader副本会把它从ISR集合中剔除。

如果OSR集合中有follower副本追上了leader副本,那么leader副本会把它从OSR集合转移至ISR集合。

AR (Assigned Replicas)

分区中的所有副本统称为 AR(Assigned Replicas) 。 AR = ISR + OSR。

HW (High Watermark)

HW , 俗称"高水位"。它标识了一个特定的消息偏移量( offset ) , 消费者只能拉取到这个 offset 之前的消息 。

LW (Low Watermark):

LW是Low Watermark的缩写,俗称“低水位”,代表AR集合中最小的logStartOffset值。副本的拉取请求(FetchRequest,它有可能触发新建日志分段而旧的被清理,进而导致logStartOffset的增加)和删除消息 请求(DeleteRecordRequest)都有可能促使LW的增长。

LEO (Log End Offset )

LEO, 它标识当前日志文件中下一条待写入消息的 offset。

分区 ISR 集合中的每个副本都会维护自身的 LEO。而 ISR 集合中最小的 LEO 即为分区的 HW, 对消费者而言只能消费 HW 之前的消息。

kafka入门文章

https://blog.csdn.net/sinat_32502451/category_12465196.html

资料来源:

《深入理解 Kafka-- 核心设计与实践原理》文章来源地址https://www.toymoban.com/news/detail-815950.html

到了这里,关于kafka入门(九):副本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • kafka的副本以及分区与副本的关系

    1.Kafka 副本作用:提高数据可靠性。 2.Kafka 中副本分为:Leader 和 Follower。Kafka 生产者只会把数据发往 Leader, 然后 Follower 找 Leader 进行同步数据。 读写由leader来完成,follower只备份,和leader同步数据,leader发生故障,follower顶上去。 leader副本:可以理解为某个分区中,除了不

    2023年04月09日
    浏览(42)
  • kafka--kafka的基本概念-副本概念replica

    Broker 表示实际的物理机器节点 Broker1中的绿色P1表示主分片Broker2中的蓝色P1表示副本分片,其余类似,就是主从的概念,如果一个Broker挂掉了,还有其它的节点来保证数据的完整性 P可以看做分区 同一时间点,绿色P1 和紫色P1 不会完全一致,存在一个同步的过程 绿色部分处理

    2024年02月12日
    浏览(44)
  • KafKa 分区,副本实战

    5个broker (1主4从) 安装目路/config/server.properties, 额外复制4份为 server-2.properties,server-3.properties,server-4.properties,server-5.properties 主要配置不同 server.properties server-2.properties server-3.properties server-4.properties server-5.properties 运行这5个broker 创建一个主题test,8个分区,3个副本 bootstrap

    2024年02月11日
    浏览(40)
  • Kafka-服务端-副本机制

    Kafka从0.8版本开始引入副本(Replica)的机制,其目的是为了增加Kafka集群的高可用性。 Kafka实现副本机制之后,每个分区可以有多个副本,并且会从其副本集合(Assigned Replica,AR)中选出一个副本作为Leader副本,所有的读写请求都由选举出的Leader副本处理。 剩余的其他副本都作为F

    2024年01月24日
    浏览(46)
  • kafka之五----副本同步

    kafka每个分区下使用多副本冗余实现高可用性,多副本之间有一个leader,多个follower,它们之间的数据同步依赖3个重要属性: LEO:日志末端的位移(log end offset),标识当前日志文件中下一条待写入的消息的offset HW:高水位值(High Watermark),定义了消息可见性,标识了一个特

    2023年04月09日
    浏览(40)
  • Kafka-副本数量设置

    指的是存活的副本数量 ISR 机制的另外一个相关参数是  min.insync.replicas  , 可以在 broker 或者主题级别进行配置,代表 ISR 列表中至少要有几个可用副本。 这里假设设置为 2,那么当可用副本数量小于该值时,就认为整个分区处于不可用状态。此时客户端再向分区写入数据时候

    2024年02月14日
    浏览(33)
  • kafka-副本扩容

    创建 主题 副本扩容 使用 /bin/kafka-reassign-partitions.sh 进行副本扩容 可以发现副本数已经变成3个

    2024年02月13日
    浏览(34)
  • Kafka架构篇 - 多副本机制

    副本是分布式系统中对 数据 和 服务 提供的一种冗余方式。为了对外提供可用的服务,往往会对 数据 和 服务 进行副本处理。 数据副本:在不同的节点持久化同一份数据,当某个节点存储的数据丢失时,可以从副本中读取数据,这是分布式系统解决数据丢失问题的最有效的

    2024年02月08日
    浏览(51)
  • Kafka的分区和副本机制

    Kafka的分区和副本机制是分布式消息系统中的重要概念,它们在数据一致性和容错方面起到了关键作用。下面我将详细介绍这两个机制的工作原理和底层实现思路,并通过Java源码示例和分析来加深理解。 Kafka分区机制 Kafka的分区机制是按照一定规则将主题(Topic)中的消息分

    2024年02月01日
    浏览(54)
  • Kafka之分区副本与ISR

    Kafka的Topic分区本质是一个用于存储Topic下的消息的日志,但是只存一份日志会因为机器损坏或其他原因导致消息丢失不可恢复, 因此需要多个相同的日志作为备份,提高系统可用性,这些备份在kafka中被称为副本(replica)。 kafka将分区的所有副本均匀的分配到所有broker上,并从

    2024年02月04日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包