- nebula 版本:v3.5.0
- 部署方式:分布式
- 安装方式:Docker
- 是否上生产环境:Y
- 硬件信息
- 磁盘 SATA
- 64C 128G
-通过spark-submit提交spark-streaming程序消费topic数据时,假设spark程序突然停止,在停止时已消费到了偏移量为 100的数据,此时又往topic发送了100条数据,然后重新启动了spark-streaming进行数据消费,这个时候Exchange消费kafka是从哪个偏移量开始消费?从我们跟踪来看是从偏移量200开始消费的,这样就会导致偏移量 100-200的数据丢失。如果希望从100开始继续消费应该要怎么设置?
1 个赞
我理解应该是不支持的。
有个配置是startingOffsets ,默认配的是latest。除非把过程中的offset保存到某个地方,下次启动的时候再去读之外,估计每次启动都是最新的数据
请问对一个索引执行rebuild后,在两个小时内,4个节点的storage会在不同时间段重启(docker容器),最终导致rebuild失败, 这个是什么原因导致的
你可以关注两个配置项:
auto.offset.reset:指定最新消费的offset,exchange可配,earliest 或latest, 默认latest
enable.auto.commit:值为false,不可配
关于auto.offset.reset:
earliest
当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,从头开始消费
latest
当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,消费新产生的该分区下的数据
看你有没有配置开始消费的offset,以及是否有其他消费者也在消费
2 个赞
此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。