首页 > 试题广场 >

在Kafka中,()代表当前日志文件中下一条。

[单选题]

在Kafka中,()代表当前日志文件中下一条。

  • LEO

  • ISR

  • HW

  • AR

1. LEO(Log End Offset)

  • 定义:当前副本最新消息的偏移量(Offset),即下一条待写入消息的位置。

    • 例如,LEO=5 表示已写入 0~4 的消息,下一条消息将写入 Offset=5 的位置。

  • 特点

    • 每个副本(Leader 和 Follower)都有自己的 LEO。

    • Leader 的 LEO 更新最快,Follower 的 LEO 通过同步逐步追赶。


2. ISR(In-Sync Replicas)

  • 定义:与 Leader 副本保持同步的副本集合(包括 Leader 自己)。

  • 同步标准

    • Follower 的 LEO 与 Leader 的 LEO 差距不超过 replica.lag.time.max.ms(默认 30s)。

    • 若 Follower 长时间未同步,会被踢出 ISR。

  • 作用

    • 确保消息被多个副本确认后才视为提交(acks=all 时需所有 ISR 确认)。

    • 影响 Kafka 的数据可靠性可用性


3. HW(High Watermark)

  • 定义已提交消息的边界 Offset,表示消费者可见的最大 Offset(即所有 ISR 副本均已同步的消息位置)。

    • 例如,HW=3 表示 Offset 0~2 的消息已被所有 ISR 副本确认,消费者只能读到这些消息。

  • 关键规则

    • 消费者只能消费 ≤ HW 的消息(防止读到未提交的数据)。

    • Leader 和 Follower 的 HW 可能不同(Leader 的 HW 更新更快)。


4. AR(Assigned Replicas)

  • 定义:某个分区的所有副本集合(包括 Leader 和 Follower),无论是否同步。

    • 例如,一个分区的 replication.factor=3,则 AR 包含 3 个副本(1 Leader + 2 Follower)。

  • 与 ISR 的关系

    • ISR ⊆ AR,即 ISR 是 AR 中同步的副本子集。

    • AR 中非 ISR 的副本称为 非同步副本(Out-of-Sync Replica)。

发表于 2025-05-10 16:06:11 回复(0)