Kafka中LEO、LSO、AR、ISR、HW 都表示什么含义?

無名 发表于: 2021-07-27   最后更新时间: 2021-07-27 16:18:52   1,460 游览

Kafka中LEO、LSO、AR、ISR、HW 都表示什么含义?

发表于 2021-07-27

LEO(Log End Offset):日志末端位移值或末端偏移量,表示日志下一条待插入消息的位移值。举个例子,如果日志有10条消息,位移值从0开始,那么,第10条消息的位移值就是9。此时,LEO = 10。

LSO(Log Stable Offset):这是Kafka事务的概念。如果你没有使用到事务,那么这个值不存在(其实也不是不存在,只是设置成一个无意义的值)。该值控制了事务型消费者能够看到的消息范围。它经常与Log Start Offset,即日志起始位移值相混淆,因为有些人将后者缩写成LSO,这是不对的。在Kafka中,LSO就是指代Log Stable Offset。

AR(Assigned Replicas):AR是主题被创建后,分区创建时被分配的副本集合,副本个数由副本因子决定。

ISR(In-Sync Replicas):Kafka中特别重要的概念,指代的是AR中那些与Leader保持同步的副本集合。在AR中的副本可能不在ISR中,但Leader副本天然就包含在ISR中。

HW(High watermark):高水位值,这是控制消费者可读取消息范围的重要字段。一个普通消费者只能“看到”Leader副本上介于Log Start Offset和HW(不含)之间的所有消息。水位以上的消息是对消费者不可见的。

你的答案

查看kafka相关的其他问题或提一个您自己的问题