本包目录(311 条)
管道基础52 条
Kafka64 条
调度与编排40 条数仓建模52 条数据质量50 条CDC 与同步53 条

消费组位移重置

位移重置用于补数或跳过坏数据:把组位移改到最早、最新、指定值或时间点。要求消费组无活跃成员,默认仅演练,需加 --execute 才真正执行。

前提消费组处于 inactive(无活跃消费者)
目标--to-earliest / --to-latest / --to-offset / --shift-by / --to-datetime
执行先 --dry-run 预览,确认后加 --execute

重置到最早(含演练)

重置到最早(含演练)
# 1) 确认组已停产
kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group order-consumer --state

# 2) 演练:只打印新位移
kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
  --group order-consumer --topic orders \
  --reset-offsets --to-earliest --dry-run

# 3) 执行
kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
  --group order-consumer --topic orders \
  --reset-offsets --to-earliest --execute
重置到最早前先评估重放量:几天的消息全量重放会打满下游库;生产环境优先按时间点重置。

易错点

  • 有活跃消费者时重置会被拒绝(GroupNotEmptyException),必须先停消费或切流量
  • 重置后不搭配合适的下游幂等,会产生重复入账

数据来源与参考

  • Apache Kafka 官方文档:Reset Consumer Group Offsets
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌